位寻址区是20H到2FH,但是定义时用FLAG BIT 00H,定义的位变量对应的地址是00H还是20H?是否因为用了BIT关键字,00H=20H?那定义FLAG BIT 2FH是否是错误的?同理,SEND_DATA DATA 00H是否对应的是30H?还是应该定义为SEND_DATA DATA 30H?感觉好乱啊。。
我的理解是00H-1FH是R0-R7工作寄存器的地址,20H-2FH是可位寻址的地址,30H-7FH是字节变量地址,80H-FFH是寄存器地址。有错吗?FLAG定义在20H-2FH之间,字节变量定义在30H-7FH之间,80H以后的不定义。
我模拟了下程序:
TEST_A BIT 00H ;BIT定义00H其实就是定义了20H
TEST_B BIT 01H
TEST_C BIT 02H
TEST_DATA1 DATA 00H
TEST_DATA2 DATA 01H
TEST_DATA3 DATA 02H
TEST_DATA4 DATA 03H