組合語言實現乘法

時間 2022-07-28 12:29:43

1樓:匿名使用者

mov al,num1

sub al,30

mov dx,num2

sub dx,30

mul al,dx

mov dl,al

mov ah,02

int 21

2樓:匿名使用者

入口條件:被乘數在r2、r3中,乘數在r6、r7中。

出口資訊:乘積在r2、r3、r4、r5中。

影響資源:psw、a、b、r2~r7 堆疊需求: 2位元組muld: mov a,r3 ;計算r3乘r7mov b,r7

mul ab

mov r4,b ;暫存部分積

mov r5,a

mov a,r3 ;計算r3乘r6

mov b,r6

mul ab

add a,r4 ;累加部分積

mov r4,a

clr a

addc a,b

mov r3,a

mov a,r2 ;計算r2乘r7

mov b,r7

mul ab

add a,r4 ;累加部分積

mov r4,a

mov a,r3

addc a,b

mov r3,a

clr a

rlc a

xch a,r2 ;計算r2乘r6

mov b,r6

mul ab

add a,r3 ;累加部分積

mov r3,a

mov a,r2

addc a,b

mov r2,aret

組合語言實現求平均數問題急急急急急

用visual c 編寫的程式如下,執行的結果見插圖。上面這段程式你都看不懂?這已經是很基本的了,資料段定義。你還要算平均值呢,還要輸出呢,都要比這個複雜。大學時也是學計算機程式設計的,但是畢業好幾年了忘記了。你查查書吧,書上有例子 組合語言問題,急急急急!你的那段是80x86的彙編.還有微控制器的...

在組合語言中怎樣實現兩個數互換,組合語言怎麼利用堆疊來交換兩個數?

不是有個位元組交換指令嗎?去翻翻書,好象可以交換兩個位址的內容吧,把兩個位址分別存進內容,然後在用這個指令,然後再取出來不就好了。在組合語言中怎樣實現兩個數互換 有兩種方法,一種比如說 ax 0123h,bx 0456h 可以利用第三個暫存器cx,也就是令 cx ax ax bx bx cx 第二種...