微机原理作业及参考答案 联系客服

发布时间 : 星期日 文章微机原理作业及参考答案更新完毕开始阅读b97d34d226fff705cc170a67

3-12 (1) CL=0F6H (2) CX=5678h (3)BX=0056H, AX=1E40H

(4)SI=00F6H, [SI]=0024H (5)AX=5678H, [09226H]=1234H

3-14 (1)MOV AX,0 XOR AX,AX SUB AX, AX (2)MOV CL,4

ROR BL,CL

(3) MOV AX,N1 MOV BX,N1

CWD ;对被除数进行符号扩展 IDIV BX

MOV M1,AX ;商放在AX中 MOV M2,DX ;余数放在DX中 (4) AND BX,0F7AFH 或 OR 0850H (5) XOR AX 4020H (6) TEST DX,0201H (7) OR CX,1

3-17

NUM1 DW 4148H,2816H

NUM2 DW 2258H,8452H (1) MOV AX,NUM2 ADD NUM1,AX MOV AX,NUM2+2 ADD NUM1+2,AX (2) RES DB 2DUP(?)

MOV AL,BYTE PTR NUM1 ADD AL,BYTE PTR NUM1+1 ADD AL,BYTE PTR NUM1+2 ADD AL,BYTE PTR NUM1+3 MOV RES,AL

(3) 假设存放的数据为无符号数 MOV SI,OFFSET NUM1 XOR AX,AX MOV CX,8 LP:ADD AL,[SI] ADC AH,0 INC SI LOOP LP MOV RES,AL

MOV RES+1,AH

假设存放的数据为带符号数 MOV SI,OFFSET NUM1 XOR BX,BX MOV CX,8 LP:MOV AL,[SI] CBW ADD BX,AX INC SI LOOP LP MOV RES,AL MOV RES+1,AH (4) MOV AX,NUM1 ADD NUM2,AX MOV AX,NUM1+2 ADC NUM2+2,AX 3-18 (1)

XOR AX, AX ;AX清零

LEA SI, NUM1 MOV CX, 8

LOP: ADD AL, [SI] DAA

ADC AH, 0 ;AF清零 INC SI LOOP LOP MOV RES, AL

MOV RES+1, AH MOV AL, NUM1 SUB AL, NUM2

DAS

MOV RES, AL

差=90H; CF=1

3-21

(1)BX=9AH (2)BX=61H (3)BX=8071H (4)BX=10F7H (5)BX=0FF1CH 3-22

3-23

(1)将自FIRST开始的存储区中的连续10个字节传送到从SECOND开始的存储区中。 (2)将自0404H开始的存储区中连续256个字节全部赋0值。 3-26 MOV BX,0A80H MOV AL,5

XLAT

3-27

(1)IP=1256H (2)IP=3280H 3-28

CS=2000H; IP=009AH; 3-29

MOV BL,AL CMP AL,01H JZ LAB1 CMP AL,02H JZ LAB2 CMP AL,04H JZ LAB3 AND BL,07H JNZ OK ……

[SP+1]=3DH; [SP+2]=50H;

(3)IP=2450H

SP=0F178H; [SP]=8FH

[SP+3]=40H;

OK: …… LAB1: …… LAB2: …… LAB3: …… 3-31

MOV AX,0032H CMP AX,X JL N_HIGH MOV BX,X SUB BX,Y JO OVERFLOW JNS NEXT

NEG BX

NEXT: MOV RESULT,BX

N_HIGH: …… OVERFLOW: ……

第四章 汇编语言程序设计(P195)

4-2 内存分配和预置数据

VAR1 DB 12,-12H,3 DUP(0,0FFH)

VAR2 DB 100 DUP(0,2 DUP(1,2),0,3)

VAR3 DB ‘WELCOME TO’ VAR4 DW VAR3+6 ;取其偏移量给VAR4 VAR5 DD VAR3 ;取其偏移量和段基址给VAR5 4-3

(1)DATA1 DB 86H,27H,23H,00H,24H,1AH (2)DATA2 DW 0B430H,1062H

(3)DATA3 DB 4DUP(20H),20,0,6DUP(1,2) 4-4 (1)2 (2)2 (3)1 (4)10

4-5

(1)VAR1的偏移量是0030H;VAR2的偏移量是003AH (2)CNT=0010H

(3)VAR2+2单元的内容是02H 4-10 DATA X Y Z

SEGMENT DB 4 DUP(?) DB 4 DUP(?) DB 4 DUP(?),0

ENDS

;定义X,Y,Z为字节变量

DATA

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA MOV DS,AX MOV AX,WORD PTR X[0] ADD AX,WORD PTR Y[0] ;X,Y低16位相加 MOV WORD PTR Z[0],AX ;结果存入Z的低16位

MOV ADC MOV JNC OK

AL,1 Z+4,AL AH,4CH

;保存进位

AX,WORD PTR X[2]

AX,WORD PTR Y[2] ;X,Y高16位相加 WORD PTR Z[2],AX ;结果存入Z的高16位

MOV MOV OK: MOV

INT 21H CODE

ENDS

START

END