单片机汇编语言问题: 执行下列程序后,内部RAM 38H单元的内容是( )

单片机汇编语言问题:
执行下列程序后,内部RAM 38H单元的内容是( )
MOV 30H,#00H
MOV R0,#30H
MOV A,30H
ADD A,#05H
MOVC A,@A+PC
MOV @R0,A
SJMP $
TDB: DB 00H, 01H, 02H, 03H, 05H
END

第1个回答  2015-05-20
你问错问题了吧?问的是内部RAM 30H单元的内容是(? )吧?这段程序和内部RAM 38H单元的内容没关系。
内部RAM 30H单元的内容是(01H)追问

对不起,写错了。到不是01H

你可以说说程序执行的步骤吗?

追答

MOV 30H,#00H;(30H)=00H
MOV R0,#30H;(R0)=30H
MOV A,30H;(A)=(30H)=00H
ADD A,#05H;(A)=05H
MOVC A,@A+PC;这是单字节指令,PC=当前值,(A)=05H,由此向后数第5个字节内容送A
MOV @R0,A;一个字节指令,A的内容送30H单元(因为(R0)=30H)
SJMP $;双字节指令,死循环
TDB: DB 00H, 01H, 02H, 03H, 05H
END

本回答被提问者采纳
相似回答