(单片机)下面各指令序列中都出现了30H,但是各自的含义不同,请指出30H的具体含义

1个回答

  • (1)ADD A, #30H;这个30H是一个立即数

    (2)SETB 30H;这个30H是一个位地址

    (3)MOV R0, #30H

    MOV A, @R0;这里的30H是通过R0间接寻址,因此是一个地址(片内RAM)

    (4)MOV R1, #30H

    MOVX A, @R1;这里的30H是通过R1间接寻址,因此也是一个地址(但是片外RAM)

    (5)XCH A, 30H;片内RAM,是个直接地址

    (6)SJMP 30H;是个有符号数的相对偏移量(与PC相加)

    (7)MOV DPTR, #30H

    CLR A

    MOVC A, @A+DPTR;这里的30H是ROM的地址(查表指令的基地址)

    (8)MOV DPTR, #1000H

    MOV A, #30H

    MOVC A, @A+DPTR;这个30H是作为偏移量在查表指令中求出以1000H为基地址的ROM中的数据