77问答网
所有问题
单片机查表指令MOVC A @A+DPTR
具体:为什么不直接用 @R0+DPTR, 要先把R0放入A,然后再弄成@A+DPTR来寻址?
举报该问题
推荐答案 2018-01-19
51单片机的指令系统中,是没有MOVC A,@R0+DPTR的,查表指令只有两条:
1、MOVC A,@A+DPTR
2、MOVC A,@A+PC
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://77.wendadaohang.com/zd/GGG3YWW3GqIqqNqqq8q.html
相似回答
MOVC
A,
@A+DPTR是
什么意思
答:
MOVC A,@A+DPTR
。这条指令是
单片机查表
指令,DPTR是首地址,A寄存器,指令的意思就是将DPTR的地址加上累加器A存的偏移量,形成的新地址中的数取出给A。其他类似指令:MOVC A,@A+PC 83 由((A)+(PC));寻址的程序存贮器字节送A MOVX A,@Ri E2~E3 送外部数据(8位地址)送A ...
51
单片机
汇编
movc
A
@a+dptr
和movc A @(a+dptr)分别什么意思?求解 ...
答:
MOVC
A,
@A+DPTR
:以DPTR为基地址,变址寻址单元中的数据送入累加器 MOVC A,@A+PC:以PC为基地址,变址寻址单元中的数据送入累加器 都是间接寻址 另外,强烈建议放弃汇编,转学C语言,遇到8位以上的数学运算,汇编能把人累死!我就因此学的C语言 ...
MOVC
A,
@A+DPTR 是
什么意思?
答:
问题1:这条指令是汇编语言专用的
查表指令
,要查的表是一个顺序表,它以
DPTR
为表中数据的首地址,
A
中事先存储数据相对于表首地址的地址偏移量,最大不能超过255,通过调整A值可以查询表中指定位置的数据。这条指令执行完毕后,A中存储的是查询到的数据。简单的说:给DPTR赋表的首地址值,给A数据...
查表指令
的
MOVC
A,
@A+DPTR
答:
(DPTR)=8100H (A)=40H 执行
指令MOVC
A,
@A+DPTR
结果将程序存储器中8140H单元内容送入累加器A中。这条
查表指令
的执行结果只和指针DPTR及累加器A的内容有关,与该指令存放的地址及常数表格存放的地址无关,因此表格的大小和位置可以在64KB程序存储器中任意安排,1个表格可以为各个程序块共用。
汇编
MOVC
A,
@A+DPTR
查表
答:
0 1 2 3 4 5 6 7 00 56 00 05 00 67 00 76 比如你要取最后(从0开始数是第3个)一个双字节(DW)的数0076H 存数据的时候是按字节存,所以要先取00H后取76H R2=3,乘以2后A=6 (
MOVC
A,
@A+DPTR
)先取00H R1=6,(MOV A,R1 ;INC A)...
:MOV A,#03H MOV DPTR,#TABLE
MOVC
A,
@A+DPTR
…… TABLE DB ‘0123456...
答:
这三句是典型的
单片机查表指令
。以程序存储器为首地址存放字节(DB)数据0123……,存放在片内ROM(程序存储器)中。MOV DPTR,#TABLE 就是取TABLE首地址,其实TABLE地址处就是00H。
MOVC
A,
@A+DPTR
就是TABLE+03H地址处的数据。答案应该是ACC=03H。
关于
单片机
汇编的
MOVC
A,
@A+DPTR
,"@A+"多余吗?
答:
首先,
MOVC
A,
@A+DPTR
这个是51
单片机
的固有
指令
,去掉A+,就是错的。这个指令的好处在于:当你
查表
的时候,将表头地址赋给DPTR,然后将 键号传给A,然后直接通过MOVC A,@A+DPTR,就可以查到键号对应的键值了。这里,是循环查表,不需要A就清零A,用DPTR来控制咯,也可以用A来控制,就是inc A...
大家正在搜
51单片机查表指令详解
单片机查表指令例题
51单片机指令表
对ROM中的数据采用查表指令
单片机查表
单片机查表程序
51单片机查表
单片机汇编查表程序
单片机查表是什么意思
相关问题
单片机的查表指令(1)MOVC A,@A+PC(2)MOVC...
MOVC A,@A+DPTR是什么意思
单片机中MOVC A,@A+DPTR和MOVC A,@A+P...
MOVC A, @A+DPTR 是什么意思?
单片机中movc a,@dptr+a是什么意思?
关于MOVC A,@A+DPTR是怎么查表的
51查表指令,movc a,@a+dptr 和movc a,...
汇编语言中,指令MOVC A,@A+PC 与指令MOVC A...