關於組合語言程式的問題,高手請進

時間 2021-08-30 09:14:27

1樓:匿名使用者

首先,你的題目好象有問題吧!

xlat hex 指令不能這樣寫吧!好久沒動彙編了,印象中好象記得是這樣。

應直接寫xlat,其中表的起始地址已經放在bx中了。

hex db 'abcd1234efgh5678ijkl'

hcod db ?,?

mov bx,offset hex ;將hex表的起始地址送入bx

mov al,7ah ;將7ah→al

mov ah,al ;將7ah→ah,使得(ax)=7a7ah

and al,0fh;執行後al中的值變為0ah,

xlat ;查表,使得al←((bx)+(al)),找到'g'。

mov hcod,al ;因此hcod存放的數為'g', 而 'g'的ascii碼值為47h

mov cl,12 ;

shr ax,cl ;此時(al)=(hcod)=47h,(ah)=7ah,

因此(ax)=7a47h,邏輯右移12位後,(ax)=0007h.

即(al)=07h

xlat ;查表,使得al←((bx)+(al)),找到'4'

mov hcod+1,al;因此hcod+1存放的數為'4','4'的ascii碼值為34h

所以(hcod)='g'=47h,(hcod+1)='4'=34h

2樓:

(hcod)='g',(hcod+1)='4'

關於組合語言的問題,關於組合語言的一個問題

求補操作即是把運算元按位求反後末位加1,即ffffh opr 1 0 opr。也就是說,對一個運算元求補,相當於用0減去此運算元。參加求補運算的運算元當然是有符號數。對於cf而言,只有對0求補時,cf 0,其餘情況都使cf 1 有借位 0減去負數應該是正數,但當運算元的值是80h 128 或8000...

組合語言問題,組合語言問題

蜜蜂小玉米 assume cs code assume ds data data segment db i love you.data ends code segment start mov ax,data mov ds,ax mov bx,0 s0 check mov al,ds bx cmp a...

組合語言程式設計問題編寫組合語言程式。能每隔10秒顯示數字分別為

org 0000h 數碼管共陰 ajmp main org 000bh t0ms equ not 50000 100 ms 晶振 6.000 mhz pjsbz equ 20h pjsbzy equ 21h pst0 mov tl0,low t0ms t0 中斷 mov th0,high t0ms ...