好文档 - 专业文书写作范文服务资料分享网站

《微机原理与接口技术》第四章习题集与解答知识分享

天下 分享 时间: 加入收藏 我要投稿 点赞

精品文档

MOV CX,3

LOP: MOV AL,[BX] XOR AL,0FFH MOV [SI],AL LOOP LOP CLC

LEA SI,RES MOV CX,3

LOP1: MOV AL,[SI] ADC AL,0 MOV [SI],AL LOOP LOP1 INT 3 CODE ENDS END START

8.已知从数据段BUF单元开始存放字节型的带符号数X和Y,请设计计算Y=6X+8的程序。

答:DATA SEGMENT

BUF DB 97H,87H ;X=97H和Y=87H DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA MOV DS,AX MOV AH,0 MOV AL,BUF SHL AX,1 MOV BX,AX SHL AX,1 ADD AX,BX ADD AX,8 MOV BUF+1,AL MOV BUF+2,AH INT 3 CODE ENDS

收集于网络,如有侵权请联系管理员删除

精品文档

END START

9.已知X、Y是字节型的无符号数,请设计程序计算: X/4 (0≤x<10) Y= X-10 (10≤X<20) 答:程序如下:

DATA SEGMENT X DB 84H Y DB 0 DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX MOV AL,X CMP AL,10 JAE NEXT SHR AL,1 SHR AL,1 JMP EN NEXT: SUB AL,10 EN: MOV Y,AL INT 3 CODE ENDS

10.已知从数据段BUF单元开始存放15个字节型数据,请设计程序将其中负数和零分别送往MINUS和ZERO开始的存储器单元。

答:程序如下:

DATA SEGMENT BUF DB 15DUP(?) MINUS DB 15 DUP(?) ;存放负数 ZERO DB 15 DUP(?) ;存放0 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA ORG 100H START: MOV AX,DATA

收集于网络,如有侵权请联系管理员删除

精品文档

MOV DS,AX LEA BX,BUF MOV CX,15 LEA SI,MINUS LEA DI,ZERO LOP: MOV AL,[BX] CMP AL,0 JGE PZ MOV [SI],AL INC SI JMP NEXT PZ: JG NEXT MOV [DI],AL INC DI JMP NEXT NEXT: INC BX LOOP LOP INT 3 CODE ENDS END START

12.编一程序将字符串STR(长度20字节)中所有\代替。

答:程序如下: DATA SEGMENT STR DB 'G674GH&6TR677&74Y&98' DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX LEA BX,STR MOV CX,20

LOP: MOV AL,[BX] CMP AL,'&' JNZ NEXT MOV AL,'$' MOV [BX],AL

收集于网络,如有侵权请联系管理员删除

\用精品文档

NEXT: INC BX LOOP LOP INT 3

CODE ENDS END START

13.请设计程序,将存储器单元2200~2210H清0、2250H~2260H置1、22AOH~

22BOH置55H。要求写出主程序和子程序。 解:程序如下: DATA SEGMENT BUF1 EQU 2200H BUF2 EQU 2200H BUF3 EQU 2200H DATA ENDS STACK SEGMENT

DB 20 DUP(?) STACK ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA,SS:STACK BEG PROC FAR START: MOV AX,DATA MOV DS,AX MOV AX,STACK MOV SS,AX LEA BX,BUF1

MOV AL,0 CALL FMOV LEA BX,BUF2 MOV AL,1 CALL FMOV LEA BX,BUF3 MOV AL,55H CALL FMOV

RET START ENDP

FMOV PROC NEAR MOV CX,16 LOP: MOV [BX],AL

收集于网络,如有侵权请联系管理员删除

精品文档

INC BX LOOP LOP

RET FMOV ENDP CODE ENDS END BEG

14.编写程序,要求:

(1)键盘键入两个字符串STRING1和STRING2

(2)比较两串所含字符是否完全相同,若相同则显示‘MATCH’,若不相同则显示 ‘NOMATCH’。

解:程序如下: DATA SEGMENT STRING1 DB 10 DB ?

DB 10 DUP(?) STRING2 DB 10 DB ?

DB 10 DUP(?)

XT DB 'MATCH',13,10,'$' BXT DB 'NO MATCH',13,10,'$' DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX

LEA DX,STRING1 MOV AH,10 INT 21H LEA DX,STRING2 MOV AH,10 INT 21H

MOV AL,STRING1+1 CMP AL,STRING2+1 JNZ BD

LEA SI,STRING1+2 LEA DI,STRING2+2 MOV CH,0

收集于网络,如有侵权请联系管理员删除

《微机原理与接口技术》第四章习题集与解答知识分享

精品文档MOVCX,3LOP:MOVAL,[BX]XORAL,0FFHMOV[SI],ALLOOPLOPCLCLEASI,RESMOVCX,3LOP1:MOVAL,[SI]ADCAL,0MOV
推荐度:
点击下载文档文档为doc格式
7ift88mw2y3bj0w6iip07zlrl1bk8m012yk
领取福利

微信扫码领取福利

微信扫码分享