汇编 以16进制显示AX
scturtle
posted @ 2009年9月30日 03:55
in 各种实验
, 2246 阅读
开始用MasmPlus 因为觉得一步完成很好用 还是不会调试 于是就把AX打出来吧
.model small
.stack 200h
.data
szLetter db '0123456789ABCDEF','H',0DH,0AH,'$'
.CODE
SHOWAX PROC uses AX BX CX DX
mov cl,16
AGAIN:
PUSH AX
SUB CL,4
SHR AX,CL ;移动到需要的位数
MOV BL,AL
AND BX,0FH
MOV DL,szLetter[BX] ;查表
mov ah,2
int 21h
POP AX
CMP CL,0
JNE AGAIN
LEA DX,szLetter[16] ;H和回车
mov ah,9
int 21h
RET
SHOWAX ENDP
START:
mov ax,@data
mov ds,ax
mov ax,6549h
INVOKE SHOWAX
;暂停,任意键关闭
mov ah,1
int 21h
mov ah,4ch ;结束,可以修改al设置返回码
int 21h
END START
.stack 200h
.data
szLetter db '0123456789ABCDEF','H',0DH,0AH,'$'
.CODE
SHOWAX PROC uses AX BX CX DX
mov cl,16
AGAIN:
PUSH AX
SUB CL,4
SHR AX,CL ;移动到需要的位数
MOV BL,AL
AND BX,0FH
MOV DL,szLetter[BX] ;查表
mov ah,2
int 21h
POP AX
CMP CL,0
JNE AGAIN
LEA DX,szLetter[16] ;H和回车
mov ah,9
int 21h
RET
SHOWAX ENDP
START:
mov ax,@data
mov ds,ax
mov ax,6549h
INVOKE SHOWAX
;暂停,任意键关闭
mov ah,1
int 21h
mov ah,4ch ;结束,可以修改al设置返回码
int 21h
END START