彙編4章練習

2022-04-08 04:57:48 字數 2377 閱讀 3586

exercise one:自si開始的三個字單元中,存放著無符號的數,要求將這三個數進行相加,結果存放到後乙個單元中去。

要點:  注意是無符號數,再相加的過程中,只要cf產生了進製,就會發生溢位。

data segment

buf dw xxh,yyh,zzh

sum dw ?,?data ends

code segment

assume cs:code,ds:data

start: mov ax,data

mov ds,ax

lea si,buf

lea di,sum

mov ax,[si]

add ax,[si+2

] mov [di],ax

mov ax,

0adc ax,o

mov [di+2

],ax

mov ax,[di]

mov ax,[si+4

] mov [di],ax

adc [di+2],0

mov ah,4ch

int 21h

cod ends

end start

我們選用loop迴圈。

data segment

org 100h

buf1 db

256 dup(?)

count equ $-buf1

data ends

stk segment stack

db 100 dip(?)

stk ends

code segment

assume cs:code,ds:data,ss:stk

start:mov ax,data

mov ds,ax

mov si,offset buf1

mov cx,count

xor al,al

next:mov [si],al

inc al

inc si

loop next

mov ah 4ch

int 21h

code ends

end start

exercise three:統計上述資料塊中寫入的元素中的0元素,正數,負數的個數,並分別把同i結果寫u上述資料塊的後面三個單元中。

data segment

org 100h

buf1 db 00h,01h,02h,,,ffh ;假設我們現在定義

count equ $-buf1

db 3 dup(?)

data ends

stk segment stack

db 100 dip(?)

stk ends

code segment

assume cs:code,ds:data,ss:stk

start:mov ax,data

mov ds,ax

mov si,offset buf1

mov cx,count

xor bx,bx ;用來儲存正數和負數

xor dh,dh ;用來儲存負數

next2:mov al,[si]

cmp al,

0jz zero

js negat

inc bl

jmp next3

zero:inc dh

negat:inc bh

next3:inc si

loop next2

mov [si],dh

inc si

mov [si],bx

mov ah 4ch

int 21h

code ends

end start

通常我們一般選用loop迴圈結構來構建程式,但是movsb移動字串的指令也可以用於此。

data segment

strg1 db xxh,xxh,xxh,,,,xxh

sount equ $-strg1

strg2 db

128 dup(?)

ddata ends

code segment

assume cs:code,ds:data

start:mov ax,data

mov ds,ax

mov si,offset strg1

lea di,strg2

mov cx,count

cldrep movsb

mov ah,4ch

int 21h

code ends

end start

未完,待續........

HTMl4章上機練習5

北大青鳥始終以人才作為企業的核心資本。為了吸引 激勵和保留優秀人才,公司為員工提供完善的培訓與發展體系,關注員工成長,同時在兼顧市場競爭力和內部公平的基礎上為員工提供全面 富有競爭力的薪酬福利體系。良好的企業發展前景 廣闊的個人發展平台 快樂向上的工作環境,是青鳥人一直秉承的核心要素 我們的管理團隊...

python第4章操作列表練習

4 3 數到 20 使用乙個 for 迴圈列印數字 1 20 含 for value in range 1,21 忘加冒號 print value 4 4 一百萬 建立乙個列表,其中包含數字 1 1 000 000,再使用乙個 for 迴圈將這 些數字列印出來 如果輸出的時間太長,按 ctrl c停...

彙編基礎 筆記4(《組合語言》第六章)

程式取得所需空間的兩種方法 1.在引導程式的時候為程式分配 討論 通過在源程式中頂一段 2.程式在執行的過程中向系統申請 實驗五 1 assume cs code,ds data,ss stack data segment dw 0123h,0456h,0789h,0abch,0defh,0fedh...