一、填空题 1.ZF标志位是标志结果是否为零的,若结果,ZF为( ),否则ZF为()。当ZF为1时,SF为( ) 2.标号可以有两种类型属性。它们是( )和( ) 3.8位无符号整数的表示范围为0--255,写成16进制形式为( ),8位有符号整数的表示范围为-128--+127,写成16进制形式为( ) 4.伪指令DB,GROUP 和NAME 三个标号名字域必须有名字的是( ),不得有名字的是( ),可有可无名字的是( )。 5.循环程序通常由( )( )( )和循环结果外理四部分构成 6.在数值不达式中,各种运算符可可混合使用,其优先次序规则*,/( )于+,-;XOR,OR()于AND,LT( )于GT 7. 宏指令定义必须由伪指令( )开始,伪指令( )结束,两者之间的语句称为( ) 8.调用程序与子程序之间的参数传递方法有四种,即堆栈法( )( )( ) 9.分别用一条语句实现下述指明的功能 (1)栈顶内容弹出送字变量AYW( ) (2)双字变量AYD存放的地址指针送ES和SI( ) (3)变量AY2类型属性送AH( ) (4)不允许中断即关中断( ) (5)将字符串‘HOW ARE YOU!’存入变量AYB( ) (6)子程序返回调用程序( ) (7)地址表达式AYY[4]的偏移地址送字变量ADDR( ) (8)AX的内容加1,要求不影响CF( ) (9)BX的内容加1,要求影响所有标志位( ) (10)若操作结果为零转向短号GOON( ) 二、单选题 1.IBM PC微机中,有符号数是用( )表示的 1.原码 2.补码 3.反码 4.BCD码 2.把汇编源程序变成代码程序的过程是( ) 1.编译 2.汇编 3.编辑 4.链接 三、己知:VAR1,VAR2的类型属性分别为字和字节,标号LPFAR的类型属性为FAR。指出下列非法语句的错误原因 1.POP CS( ) 2.INC [BX] ( ) 3.MVL 8( ) 4.JLE LPFAR( ) 5.MOV DB,1800( ) 6.MOV[DI],VAR1 7.SUB AX,VAR2( ) 8.CMP SS AX( ) 四、简答题 1.试述子程序的一般结构组成 2.标号有哪三个属性?其含义是什么? 3.试述CMP AX,BX和SUB AX,BX两条语句的异同点? 五、阅读如下程序段,回答所提出的问题,假定X1,X2,...XN为无符号数。 ORG 100H BLOK DW X1,X2,...,XN COUNT EQU ($-BLOK)/2 RESULT DW COUNT,? ... LEA BX,BLOK-2 MOV CX,RESULT XOR AX,AX GOON:ADD BX,2 CMP AX,[BX] JAE NEXT MOV AX,[BX] NEXTOOP GOON MOV RESULT+2,AX 程序段执行完,回答下述问题 RESULT+2字存储单元的内容=( ) BX=( ) 程序循环次数=( ) 六、在下述程序段的每一空框内填入一个语句(不得修改其它语句),以实现如下功能:字节变量STR中存放着一个字符串,以0DH为结束标志,试求串长度并送字变量COUNT中。 LEA SI,STR ( ) XOR CX,CX GOON: CMP AL,[SI] ( ) INC CX ( ) JMP GOON NEXT:MOV COUNT,CX 七、编制将DS段中名为BUFB的字节存储区改写为空白字符(编码为20H)的程序段。假定BUFB存储区定义为BUFB DB N DUP('^'),其中N为字面常量。 八、己知宏指令为: SHIFT MACRO RR,COUNT MOV AX,COUNT IF RR LE 64 MOV CL,3 SHR AX,CL IF RR LT 16 MOV CL,6 SHR AX,CL ENDIF ENDIF ENDM 宏调用为:SHIFT 15,7FFFH SHIFT 80,9FFFH 写出宏扩展后的等效源程序段。 九、编写完整程序,功能是把N个8个二进制数据转换成16进制字符数据。假定N个数据存放在字节变量VARB中,转换后的字符数据存放在HVARB中,提示0--9的字符码为30H--39H,A--F的字符码为41H--46H |