ORG 1000H ;伪指令,指定后面的程序从1000H单元开始存放,本指令不占用存储单元。
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,70H
首先 TAB1 EQU 1234h 它并不分配内存单元
这里EQU是代表定义一个符号常量 这点和C里面的预处理#define命令类似
下面遇到TAB1,就会用1234H替换。
db,dw是两条伪指令。db分配字节空间并赋初值,dw分配字节空间。
注意,这里70h虽然只有1个字节大小,但是其类型是字,是占了两个字节空间的。
================================================================
好了来看这道题目 4dh,41h,49h,4eh分别是main四个字母的ascii码值
而1234h 3000h分别对应tab1 tab2由dw伪指令定义 后面0070h实际上是70h在内存里的样子
楼主再去理解一下 不懂再补充一下问题。