我有一个存储在寄存器对B中的十六进制值。我想用字符读取它。例如,在B中是322(十六进制)我想在累加器3中然后是2然后是2(在ASCII中)。它有可能吗?或者是否可以将此寄存器对存储到" string"中。字符串我的意思是这一行 - > my_string: ds 30
我对集会很新。
答案 0 :(得分:1)
我记得,"注册对B"由B和C寄存器组成。 C是低8位,B包含高8位。因此,如果您在BC中有一个值并且想要获得十六进制数字(4位数),则过程类似于:
自从我编写任何8080代码以来已经很长时间了,所以我不会在这里混淆你的代码。我上面概述的步骤将满足您的需求。
请注意,我对0x0F的使用可能不是汇编程序的正确语法。我试图立即使用十进制值15或十六进制值F.我不知道汇编程序如何表示十六进制常量。
我不认为8080有换班指令。但是,它确实有旋转指令。所以你做的不是向右移动4个位置是向右旋转四个位置然后屏蔽低4位。那就是:
RAR
RAR
RAR
RAR
ANI 0x0F