📜  8086程序将8位ASCII转换为BCD编号

📅  最后修改于: 2021-06-28 14:33:27             🧑  作者: Mango

问题–编写一个程序将ASCII转换为BCD 8位数字,起始地址为2000 ,该数字存储在2050存储器地址中,并将结果存储到3050存储器地址中。

Example-
Input  : location: 2050
         Data   : 37
Output : location: 3050    
         Data   : 07        

算法 –

  1. 将[2050]处的值移到AL中
  2. 用0F在AL上执行AND操作
  3. 将累加器AL的内容移至3050
  4. 停止

程序 –

Memory Mnemonics Operands Comment
2000 MOV AL, [2050] [AL] <- [2050]
2004 AND AL, 0F [AL] <- ([ AL] AND 0F )
2006 MOV [3050], AL [3050] <- [AL]
200A HLT Stop

说明–寄存器AL用于一般用途

  1. MOV用于传输数据
  2. AND用于乘法(逻辑上)
  3. HLT用于暂停程序