彙編求和實驗

2021-07-02 14:15:52 字數 1508 閱讀 4183

設在a、b和d字單元中分別存放著三個數。若三個數都不是0,則求出三個數的和並存放在s單元中;若其中有乙個數為0,則把其他兩個單元也清零。

如有錯誤,請各位大神指導!!!

**如下:

datas segment

a dw 1

b dw 2

d dw 6

count dw ($-a)/2

tip db 'the number:',0ah,0dh,'$'

tip1 db 0ah,0dh,'$'

;此處輸入資料段**  

datas ends

stacks segment

;此處輸入堆疊段**

stacks ends

codes segment

assume cs:codes,ds:datas,ss:stacks

start:

mov ax,datas

mov ds,ax

lea dx,tip

mov ah,9

int 21h

lea si,a

mov cx,count

lop2:

mov ah,2

mov dl,[si]

add si,2

add dl,30h

int 21h

jmp lop1   

lop1:

mov dl,' '

mov ah,2

int 21h

loop lop2

mov ax,0

mov bx,0

mov cx,count

sub si,2

lop3:

cmp [si],bx

jz lop4

add ax,[si]

sub si,2

loop lop3

jmp lop6 

lop4:

mov cx,4h

lea si,a

lop5:

mov [si],bx

push [si]

add si,2

dec cx

cmp cx,0

jz exit

jmp lop5

exit:

mov ah,2

pop [si]

inc cx

mov dl,[si]

add dl,30h

int  21h

cmp cx,3d

jz exit1

jmp exit   

lop6:

mov ah,9

lea dx,tip1

int 21h

mov ah,0

mov ah,2

mov dl,al

add dl,30h

int 21h   

exit1:  

mov ah,4ch

int 21h

codes ends

end start

c 實驗5 求和

1.問題及 檔名稱 shen.cpp 作 者 沈聰 完成日期 2016 年 05月 09 日 版 本 號 v1.0 對任務及求解方法的描述部分 從鍵盤中輸入10個數放入陣列a,求陣列a中正數和負數的和。運用陣列知識求解 輸入描述 輸入10個數 問題描述 陣列怎麼用 程式輸出 輸出10個數中正數和負數...

C 實驗5 求和

一。問題及 檔名稱 111111.cpp 作 者 安帝 完成日期 2016 年 05 月 8 日 版 本 號 v1.0 對任務及求解方法的描述部分 輸入描述 無 問題描述 從鍵盤中輸入10個數放入陣列a,求a陣列中正數和負數的和。程式輸出 a陣列中正數和負數的和 問題分析 略 演算法設計 略 三。心...

組合語言 轉圈求和

1 寫程式,對給出的8個數,將相鄰的數求和 最後寫第乙個數與最後乙個數的和 並把結果寫在其後。在下面的示例中,求和的結果為3 5 7 9 11 13 15 9。datasg segment dw 1,2,3,4,5,6,7,8 dw 0,0,0,0,0,0,0,0 datasg ends 提示1 相...