试编写一个汇编语言程序 要求从键盘接收一个四位的16进制数 并在终端上显示与它等值的二进制数

等待愛 1个月前 已收到1个回答 举报

再见呐过去 3星

共回答了329个问题采纳率:97.7% 评论

code segment assume cs:code start: mov bx,0 mov ch,4 mov cl,4 s0: mov ah,1 ;键盘输入4个16进制数 int 21h cmp al,39h ;判断是0~9还是A~H,若是数字减30H,否则还要减07H jbe next sub al,07h next: sub al,30h shl bx,cl add bl,al ;转换后的数据存入BX,每存一次左移4位 dec ch jnz s0 ;输入完则控制显示 mov cx,16 s1: mov dl,0 rol bx,1 ;循环左移1位,最高位移入CF adc dl,30h ;加30H后可得该位的ASCII码. mov ah,02h int 21h loop s1 mov ax,4c00h int 21h code ends end start 说明:编译连接后,运行后直接输入4个16进制数后回车即可.

1小时前

44
可能相似的问题

热门问题推荐

Copyright © 2024 微短问答 All rights reserved. 粤ICP备2021119249号 站务邮箱 service@wdace.com