请问“输入一个按键,以二进制输出它的ASCII码”怎么实现?

sumy 2003-10-20 08:45:38
请问“输入一个按键,以二进制输出它的ASCII码”怎么实现?

要求:不能用移位指令

虽然这个问题我已经请教过别人,但具体实现还是做不出来,所以请大家帮帮忙,搞定后给分!
...全文
117 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
csdsjkk 2003-10-20
  • 打赏
  • 举报
回复
div 2
or
test al,xxxxxxxx

Areslee 2003-10-20
  • 打赏
  • 举报
回复
不能用位移你就不能用乘除法代替吗?
csdsjkk 2003-10-20
  • 打赏
  • 举报
回复
mov cx,8
mov al,xx
cont:
mov ah,2
mul ah
push ax
mov dl,'0'
jnc m1
inc dl
m1:
mov ah,2
int 21h
pop ax
loop cont

sumy 2003-10-20
  • 打赏
  • 举报
回复
不明白,能否写段代码解释一下?
Areslee 2003-10-20
  • 打赏
  • 举报
回复
晕!你就不能乘了以后检查进位标志吗?
sumy 2003-10-20
  • 打赏
  • 举报
回复
那不用test指令如何实现呢?
TimesNewRoman 2003-10-20
  • 打赏
  • 举报
回复
那用test好了,test al,10000000,test al,01000000,一直到test al,00000001做8次。
sumy 2003-10-20
  • 打赏
  • 举报
回复
乘法?说得容易,乘法是左移,比如原来al是11111111移了7位后后就是1000000,这时候输出根本就不是原来的最高位的数了。

要右移的话就要乘-7次方,但第二次就要乘-6次方,每次递减,这里很难控制。

而csdsjkk() 你说的div 2,输出后的结果,顺序是调转的!

21,453

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧