《汇编第五章作业.docx》由会员分享,可在线阅读,更多相关《汇编第五章作业.docx(2页珍藏版)》请在三一办公上搜索。
1、汇编第五章作业5.14 指出下列指令的错误所在。 (1) AND SI,3 未指明存储器属性,字节还是字? (2) SUB DS,AX 段寄存器不支持这种格式 (3) PUSH 5 PUSH的操作数必须是寄存器或内存,不可以是立即数 (4) OR 80H,AL 立即数无法存放或运算的结果 (5) CMP BX,TABLE 两个操作数不能同时为存储单元 (6) ROL AL,3 当移位指令的位数大于1时应放到CL寄存器中 5.17 简述操作系统对可执行程序的加载和执行过程。 见P115,最下面1)8) 5.26 写出程序段。判断字节单元X中的数是否为偶数,是偶数则显示Y,否则显示N。 DATAS
2、 SEGMENT X db 7 DATAS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS START: MOV AX,DATAS MOV DS,AX sar X,1 jc let1 mov dl,Y jmp print let1: mov dl,N print: mov ah,2 int 21h MOV AH,4CH INT 21H CODES ENDS END START 5.27 分支程序设计。完成如下公式的计算,请写出程序。 /2 X0 Y= 0 X=0 X4 X0 DATA SEGMENT X DB 23 Y DB ? DATA ENDS CO
3、DE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV AL,X CMP AL,0 JE SUB2 JG SUB1 MOV CL,2 SAL AL,CL JMP SHORT SUB2 SUB1:ADD AL,3 SAR AL,1 SUB2: MOV Y,AL MOV AH,4CH INT 21H CODE ENDS END START 5.29 字数组M中有10个数据,分类统计其中正数、负数、0的个数,分别存入POSI、NEGA、ZERO 单元。 DATAS SEGMENT M db 1,-3,0,4,22,-5,-6
4、,0,7,0 POSI db ? NEGA db ? ZERO db ? DATAS ENDS STACKS SEGMENT ;此处输入堆栈段代码 STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS START: MOV AX,DATAS MOV DS,AX mov bx,offset M mov cx,10 let0: mov al,bx cmp al,0 jg let1 jz let2 inc NEGA jmp let3 let1: inc POSI jmp let3 let2: inc ZERO let3: inc bx dec cx cmp cx,0 jg let0 MOV AH,4CH INT 21H CODES ENDS END START