TAB1 EQU 1234H ;伪指令,定义程序中出现的TAB1的值是1234H,本指令不占用存储单元。
TAB2 EQU 3000H ;伪指令,定义程序中出现的TAB2的值是3000H,本指令不占用存储单元。
DB “MAIN” ;伪指令,指定1000H--1003H单元依次存放四个大写字母 M A I N 的ASCII码值4DH, 41H, 49H, 4EH。
DW TAB1,TAB2,70H ;伪指令,指定1004H--1008H单元依次存放TAB1,TAB2,0070H。即1234H,3000H,0070H(因为DW定义的是字,故字节70H前要加00H变成字0070H),也就是12H,34H,30H,00H,00H,70H 。
所以然答案为:4DH, 41H, 49H, 4EH, 12H,34H,30H,00H,00H,70HMOV DPTR,#TAB
MOVC A,@A+DPTR
CPL A ;理解这句
MOV P0,A
MOV DPTR,#TAB 这句是将TAB处的内容的地址移入DPTR寄存器(51单片机中唯一的一个16位的)
MOVC A,@A+DPTR 这句将(A寄存器中的内容+DPTR)中的地址处的数据移入A
比如此时 A=0,DPTR=300,这时就将300+0寄存器里的数据移到A
如果A=2,DPTR=300,这时就将(300+2)寄存器里的数据移到A
CPL A ; A求反,
MOV P0,A 将A的值移入P0口,用数码管等显示出来结果cpu内部结构!辅助运算器工作的编码器!节约时间的,程序在处理的时候从累加器A简称ACC,累加器A为8位寄存器,通过暂存器与ALU相连,是最常用的寄存器,功能较多,既可以存放 *** 作数,也可以存放中间结果,一些双 *** 作数指令中!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)