4.1、判断下列标识符的合法性。
1)、code
2)、Data
3)、ABCDH
4)、1abcH (不合法,不能以数字开头)
5)、eax (不合法,标识符不能是汇编语言的保留字,汇编语言的保留字主要是指:指令助忆符、伪指令定义符、寄存器名以及一些具有特殊含义的字符串等)
6)、???01
7)、A?@
8)、www@zsu
9)、www@zsu.edu.cn (不合法,标识符一般最多由31个字母、数字及规定的特殊字符(?、@、_、$)等组成,并且不能用数字开头)
10)、AX$DX
11)、_BX
12)、CX
4.2、按下面要求写出相应的数据定义语句(未指定变量名的,可任意指定或省缺)。
1)、定义一个字节区域,第一个字节的值为20,其后跟20个初值为0的连续字节;
DB 20, 20 DUP(0)
2)、定义一个以0为结束符的字符串,其初值为:The course is easy;
DB "The course is easy", 0
3)、定义一个以'$'为结束符的字符串,该串中含有换行符和回车符;
DB 0D, 0A, "$"
4)、定义100个字,其初值为0;
DW 100 DUP(0)
5)、从一个偶地址开始定义一个字变量word;
EVEN
WORD DW ?
6)、先定义一个字符串String,其偏移量指定为10,其初值为"ABCDEF",然后再定义3个字类型的数组Data,要求String和Data的偏移量相同;
ORG 10
STRING DB "ABCDEF"
ORG 10
DATA DW 3 DUP(?)
7)、定义一个字符串String,其初值为"12345678",再定义4个字类型的数组Data,要求String和Data共享同一片内存单元;
STRING DB "12345678"
ORG $-8
DATA DW 4 DUP(?)
4.3、把下列C语言的变量定义语句改写成与之等价的汇编语言语句。
1)、char ch1, ch2[3], ch3[]="Are you ready?", ch4='Q';
ch1 DB ?
ch2 DB 3 DUP(3)
ch3 DB "Are you ready?", 0
ch4 DB "Q&#