汇编\将BX中任一位十六进制数输出

来源:百度知道 编辑:UC知道 时间:2024/06/21 22:50:27
汇编语言,简单程序

将BX中任一位十六进制数输出
要求:1,人机对话
机问:Which one do you want to put out?(0-3)
答:0-3

谢谢,求救各位高手帮忙编一下

; 本程序通过编译,运行正确
Code Segment
Assume CS:Code,DS:Code
KB_ESC equ 001BH
; -----------------------------------------
; 功能:输出一个字符
; 入口:dl=要显示的字符
enter_Chr proc Near
push ax
mov ah,02h
int 21h
pop ax
ret
enter_Chr endp
; -----------------------------------------
; 功能:显示指定地址(Str_Addr)的字符串
; 入口:
; Str_Addr=字符串地址(要求在数据段)
; 用法: Output Str_Addr
; 用法举例:Output PromptStr
Output MACRO Str_Addr
lea dx,Str_Addr
mov ah,9
int 21h
EndM
; -----------------------------------------
; 功能:将AL中的低4位二进制数转换成十六进制显示的ASCII码
; 入口:AL
; 出口:AL=转换后的ASCII码
AL_ASCII Proc Near
cmp al,10 ;AL<10?
jb @@To_ASCII ;AL<10,按数字处理
add al,7 ;AL>=10,按大写字母处理
@@To_ASCII: add al,'0' ;转换成相应的数字或大写字母
ret
AL_ASCII EndP
; -----------------------------------------