當前位置:編程學習大全網 - 編程語言 - 有關匯編編程的問題,求解答

有關匯編編程的問題,求解答

1. 實現無符號雙字02344652h與0f0f0f0f0相加。

mov ax,4652h

mov dx,234h

add ax,0f0f0h

adc dx,0

add dx,0f0f0h

2. 實現無符號雙字02344652h與0f0f0f0f0相減。

mov ax,4652h

mov dx,234h

sub ax,0f0f0h

sbb dx,0

sub dx,0f0f0h

3. 實現無符號數0B4h與11h相乘。

mov al,0b4h

mov ah,11h

mul ah

4. 實現有符號數0B4h與11h相乘。

mov al,0b4h

mov ah,11h

imul ah

5. 實現無符號數0400H除以B4H。

mov ax,400h

mov cl,0b4h

div cl

6. 實現有符號數0400H除以B4H。

mov ax,400h

mov cl,0b4h

idiv cl

7. 實現有符號數除法AX÷BX。

xor dx,dx

idiv bx

8. 已知AX=1234H,BX=4612H,計算1234-4612的差(顯示的是十進制數運算的結果)。

code segment

assume cs:code

a db 5 dup (?)

db "$"

s:push cs

pop ds

mov ax,1234h

mov bx,4612h

sub ax,bx

xor dx,dx

xor bx,bx

s1:

call divdw

add cx,30h

push cx

inc bx

or ax,ax

jnz s1

mov cx,bx

xor bx,bx

s2:

pop a[bx]

inc bx

loop s2

mov dx,offset a

mov ah,9

int 21h

mov ax,4c00h

int 21h

code ends

end s

9. 將BL中的D0和D4清零,其余位不變。

and bl,6

10. 將BL中的D0和D4置1,其余位不變。

or bl,9

11. 將BL中的D0和D4求反,其余位不變。

mov bh,bl

xor bl,0ffh

and bh,6

or bl,bh

12. 利用移位指令計算3×AX+7×BX,並賦值給DX,假設AX、BX都是無符號數,無進位。

mov dx,ax

shl ax,1

add dx,ax

mov ax,bx

shl bx,1

shl bx,1

shl bx,1

sub bx,ax

add dx,bx

13. 將DX.AX中的32位數值左移壹位。

clc

rcl ax,1

rcl dx,1

14. AH和AL分別存放著非壓縮BCD碼的兩位,將其合並成為壹個壓縮BCD碼存入AL。

and al,0fh

mov cl,4

shl ah,cl

and ah,0f0h

or al,ah

15. 比較無符號數大小,將較大的存放在ax

mov ax,x

cmp ax,y

ja s

mov ax,y

s:

...

16. 用02H號DOS系統功能調用在顯示器輸出壹個字符,這個字符為‘?’。

mov dl,"?"

mov ah,2

int 21h

17. 用09H號DOS系統功能調用在顯示器輸出壹個字符串,這個字符串為‘I am a student’。

a db "I am a student$"

mov dx,offset a

mov ah,9

int 21h

18. 將數據段source指示的‘Hello’字節數傳送到destination指示的主存區。

push ds

pop es

mov si,source

mov di,destination

mov cx,5

rep movsb

19. 用位操作指令實現AL(無符號數)剩余10。

and al,10

20. 用邏輯運算指令實現數字0~9的ASCII碼與非壓縮BCD碼的互相轉換。

這個不怎麽會.aaa指令不熟.

21. 有壹個100字節元素的遠足,其首地址為array,將每個元素減1(不考慮溢出)存於遠處。

mov cx,100

mov bx,offset array

mov ds,seg array

s:

dec [bx]

dec bx

loop s

請完整的操作並描述匯編語言程序開發的四大步驟。

這個妳自己找資料吧.

  • 上一篇:資中哪裏有賣表白的小禮物店
  • 下一篇:LOL蘋果機器人編程
  • copyright 2024編程學習大全網