这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 单片机程序(汇编)之查表程序

共1条 1/1 1 跳转至

单片机程序(汇编)之查表程序

助工
2014-09-17 17:41:24     打赏

在80C51汇编语言中专门设置了2条查表指令:“MOVC A,@A+DPTR”和“MOVC A,@A+PC”。

设计一个将十六进制数转换成ASCII码的子程序。设十六进制数存放在R0中的低4位,要求将转换后的ASCII码送回R0中。

      ORG 60H
      MOV A,R0
      ANL A,#0FH            ;保留低4位
      ADD A,#02             ;变址调整 
      MOVC A,@A+PC      ;查表获取ASCII码值
      MOV R0,A
      RET
TAB:DB  30H,31H,32H
       DB  33H,34H,35H
       DB  36H,37H,38H
       DB  39H,41H,42H
       DB  43H,44H,45H,46H

 

由于“MOVC A,@A+PC”指令与表格首地址相隔2字节,故变址调整值为2


共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]