8085将一个字节分成两个半字节的程序

问题—— 在8085微处理器中编写汇编语言程序,将一个字节分成两个半字节,并将结果存储在2001H和2002H中。 例如——

null

图片[1]-8085将一个字节分成两个半字节的程序-yiteyi-C++库

算法-

  1. 将存储单元2500的内容加载到累加器A中。
  2. 现在我们将使用累加器和OFH的内容执行和操作。
  3. 使用STA,我们现在将结果存储在2501H内存位置。
  4. 使用LDA,我们将在蓄能器中加载2500H的内容物。
  5. 再次执行AND操作以分离另一个半字节,即使用累加器和F0H的内容执行AND操作。
  6. 现在将累加器中的每个位向右旋转一个位置,并重复此步骤四次。
  7. 现在使用STA,我们将在2502H内存位置存储另一个半字节。

项目-

内存地址 助记符 议论
2000 LDA 2500H A
2003 ANI 0FH A
2005 STA 2501H M[2501]
2008 LDA 2500H A
200B ANI F0H A
200D RRC 向右旋转一个位置
200E RRC 向右旋转一个位置
200F RRC 向右旋转一个位置
2010 RRC 向右旋转一个位置
2011 STA 2502H M[2502]
2014 HLT 停止节目。

解释—— RRC- 累加器的每个二进制位向右旋转一个位置。位D0位于D7的位置以及进位标志中。CY根据位D0进行修改。

  1. LDA 2500H- 加载累加器A中内存位置2500的内容。
  2. ANI 0FH- 使用蓄能器和0FH的内容物执行和操作。
  3. STA 2501H- 将累加器的内容存储到存储器位置2501H。
  4. LDA 2500H- 加载累加器A中内存位置2500的内容。
  5. ANI F0H- 使用蓄能器和F0H的内容物执行和操作。
  6. RRC- 将累加器中的每个位向右旋转一个位置。
  7. RRC- 将累加器中的每个位向右旋转一个位置。
  8. RRC- 将累加器中的每个位向右旋转一个位置。
  9. RRC- 将累加器中的每个位向右旋转一个位置。
  10. STA 2502H- 将累加器的内容存储到存储器位置2502H。
  11. HLT- 停止程序的执行。
© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享