彙編 求兩個數之和

2021-10-25 04:17:27 字數 1221 閱讀 1349

**:

data segment

;定義位元組型別資料add1,add2,sum和cont(存放兩個加數的長度)

add1 db 11h,11h,11h,11h,11h,11h

add2 db 66h,55h,44h,33h,22h,11h

sum db 6 dup(0)

cont db 3

data ends

stack segment para stack 『stack』

db 100 dup(?);定義100個未經初始化的位元組

stack ends

codes segment

assume cs:codes,ds:data,es:data,ss:stack

maddb:

mov ax,data

mov ds,ax;初始化資料段暫存器

mov es,ax;初始化附加段暫存器

mov si,offset add1;將add1的偏移位址存入si中

mov di,offset add2;將add2的偏移位址存入di中

mov bx,offset sum;將sum的偏移位址存入bx中

mov cl,byte ptr cont;cl在當前時刻強制設定為位元組型別之後,賦值為cont

mov ch,0;初始化相加字長度

clcmaddb1:mov ax,[si]

adc ax,[di];16位相加

inc si;si+1

inc si

inc di

inc di

mov [bx],ax;相加結果送至結果單元

inc bx

inc bx

loop clcmaddb1;迴圈執行

hlt;處理器「暫停」指令

codes ends

end maddb

如何查驗實驗結果:

1.在除錯模式下輸入t,

程式執行一條指令

2.因為sum的偏移位址存放在bx中,而程式後面bx的位址發生變化,所以要記下bx的第一次變化的值

3.輸入d 000c 即可出現結果

(000c是此程式在執行時bx的第乙個值)

求兩個數之和

給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。示例 給定 nums 2,7,11,15 target 9 因為 nums 0 nums 1 2 ...

兩個數之和

力扣 給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。示例 給定 nums 2,7,11,15 target 9 因為 nums 0 nums 1...

彙編求兩個數的和 注釋

datas segment five db 5 datas ends stacks segment db 128 dup stacks ends codes segment assume cs codes,ds datas,ss stacks start mov ax,datas 把資料存到資料段d...