📜  8085程序将ASCII码转换为HEX码

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

问题–编写汇编级语言程序以将ASCII代码转换为其相应的HEX代码。

例子:

Input: 
DATA: 31H in memory location 2050
Output:
DATA: 0BH in memory location 3050 

假定程序的起始地址,输入存储位置和输出存储位置分别为2000、2050和3050。

算法 –

  1. 在累加器中输入2050的内容。
  2. 从累加器中减去30H。
  3. 将累加器的内容与0AH进行比较。
  4. 如果累加器的内容小于0A,则转到步骤6,否则转到步骤5。
  5. 从累加器中减去07H。
  6. 将累加器的内容存储到内存位置3050。
  7. 终止程序。

程序 –

ADDRESS MNEMONICS COMMENTS
2000 LDA 2050 A
2003 SUI 30H A 2005 CPI 0AH
2007 JC 200D Check for carry
200B SUI 07H A 200D STA 3050 [3050] 2010 HLT Stop execution

解释 –

  1. LDA 2050将存储器位置2050的内容加载到累加器。
  2. SUI 30H立即从累加器中减去30H。
  3. CPI 0AH立即将0AH与累加器的数据进行比较。
  4. JC 200D检查是否进位,然后转到地址200D。
  5. SUI 07H立即从累加器中减去07H。
  6. STA 3050将累加器的内容存储到内存位置3050。
  7. HLT停止执行程序。