📜  8085程序查找8位数字的1和2的补码

📅  最后修改于: 2021-06-28 15:49:15             🧑  作者: Mango

问题–编写一个程序来查找8位数字的1和2的补码,其中起始地址为2000,并且该数字存储在3000存储地址中,并将结果存储到30013002存储地址中。

例子 –

算法 –

  1. 将内存3000中的数据加载到A(累加器)中
  2. 累加器补足含量
  3. 将累加器的内容存储在存储器3001中(1的补码)
  4. 在累加器内容中添加01
  5. 将累加器的内容存储在存储器3002中(2的补码)
  6. 停止

程序 –

Memory Mnemonics Operands Comment
2000 LDA [3000] [A] <- [3000]
2003 CMA [A] <- [A^]
2004 STA [3001] 1’s complement
2007 ADI 01 [A] <- [A] + 01
2009 STA [3002] 2’s complement
200C HLT Stop

解释 –

  1. A是一个8位累加器,用于直接加载和存储数据
  2. LDA用于通过16位地址(3字节指令)直接加载累加器
  3. CMA用于补充累加器的内容(1字节指令)
  4. STA用于通过16位地址(3字节指令)直接存储累加器
  5. ADI用于立即将数据添加到累加器中(2字节指令)
  6. HLT用于暂停程序