作者macshieh (macshieh)
看板ASM
标题Re: [问题] 关於数码转换
时间Sun Jul 18 22:10:06 2010
※ 引述《jason12308 (jason12308)》之铭言:
: 我想写的程式功能是:输入一个(0~9999),然後用code view看暂存器BX
: 的内容值是不是和我所输入的数字相符合,就是十进制转16进制,但不用输出
: 用code view看就行了
: 重点是…我打的程式每次都只能输入一个数字,然後run完再输入第二个
: 数值是正确的。
: 但我想一次打完4个数字,然後按下enter(0dh)再让程式run…请大大帮忙修改
: 程式:
: 是用masm6.11 run
: .8086
: .model small
: .stack 100h
: .data
: mes1 db 'input a num(0~9999)$'
: input db ?
: .code
: .startup
: mov bx,0
: mov ah,09h
: lea dx,mes1
: int 21h
: get:
: mov ah,01h
: int 21h
: mov input,al
: sub al,30h
^^^^^^^^^^先判断在做减去30h或是直接改成用and al,0fh
: cmp al,0dh
: je quit_num
: cbw
: mov dx,ax
: mov ax,bx
: mov bx,dx
: mov cx,10
: mul cx
: xchg ax,bx
: add bx,ax
: jmp get
: quit_num:
: .exit
: end
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.133.3.218
1F:推 jason12308:哇!神手!才一行就解开了我好几个小时的疑惑 07/18 22:28