微机习题+答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、程序填空

1、下列程序段要求在100 个带符号数中找出其中最大的一个数。设该数据区首址的偏移地址=2000H,最后要求将最大值存入偏移地址=2100H的单元中,试填空完成该程序。MOV BX,2000H

MOV AX,[BX]

MOV CX,100

LOP1:INC BX

CMP AL,[BX]

JNG LOP2

MOV AL,[BX]

LOP2:LOOP LOP1

MOV [2100H] ,AL

5、求某数据区内负数的个数程序如下:(在空白处填入适当的语句)。

(1)STACK SEGMENT STACK DW 64 DUP(?)

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE

START: MOV DI,3000H

MOV CL,[DI]

XOR CH,CH

MOV BL, CH

INC DI

A1: MOV AL, [DI]

TEST AL, 80H

JE A2

INC BL

A2: INC DI

LOOP A1

INT 03H

CODE ENDS

END START

(2)STACK SEGMENT STACK

DB 20 DUP(?)

STACK ENDS

DA TA SEGMENT

NUM DB ?

DA TA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DA TA START: MOV SI,2000H

MOV CX,50

MOV BL,00H

A1: MOV AL,[SI]

CMP AL,’A’;

CMP AL,41H

JNZ A2

INC BL

A2: INC SI

LOOP A1

MOV NUM,BL

INT 03H

CODE ENDS

END START

4、有如下程序段,

DA TA SEGMENT

X1 DB 0FAH

X2 DB 0FCH DA TA ENDS

CODE SEGMENT

……

MOV AL,X1

ADD AL,X2

……

CODE ENDS

END

问:ADD指令执行完后标志寄存器中的哪些位受到影响?标在题图中。

OF DF IF TF SF ZF AF PF CF

0 1 0 1 1

题四(1)图答案

5、求某数据区内负数的个数程序如下:(在空白处填入适当的语句)。

STACK SEGMENT STACK

DW 64 DUP(?)

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE

START: MOV DI,3000H

MOV CL,[DI]

XOR CH,CH

MOV BL, CH

INC DI

A1: MOV AL, [DI]

TEST AL, 80H

JE A2

INC BL

A2: INC DI

LOOP A1

INT 03H

CODE ENDS

END START

7、请把下列程序填写完整,并回答问题:

TITLE EXAMPLE.ASM

DA TA SEGMENT

A DW 0

B DW 0

C DW 230,20,54

DATA ENDS

CODE SEGMENT ASSUME CS:CODE,DS:DATA PROG PROC FAR START: PUSH DS

MOV AX.0

PUSH AX

MOV AX,DA TA

MOV DS,AX

MOV BX,OFFSET C

MOV AX,[BX]

MOV B,AX

MOV AX,2[BX]

ADD AX,B

MOV A,AX

EXIT: RET

PROG ENDP

CODE ENDS

END START

问题:

1.程序执行完后,A单元的内容是多少?答:A单元的内容为250。

2.写出上机运行本程序的步骤

答:C>MASM EXAMPLE C>LINK EXAMPLE

C>EXAMPLE

10、地址内容

2000:(2)填空:

BUF2= 3

BUF4= 4

BUF5= 4

SEG BUF3= 2000H

OFFSET BUF3= 0004H

31H

33H

34H

12H

03H

0AH

03H

0AH 0000

0001

0002

0003

0004

0005

0006

0007

11、阅读程序

(1)程序完成的功能:寻找字符串中各字符含1的个数

(2)程序运行结束后,DL中的内容:02H

(3)程序运行结束后,CX中的内容:0 (4)指令CMP AL,0在程序中的作用:缩短寻找的过程

(5)程序运行结束后,DA+1单元中的内容:02H (6)程序运行结束后,DA+2单元中的内容:03H

11、阅读下面程序并填空,程序中采集了ADC0809的IN4~IN7 模拟通道。

MOV DX,5003H ;8255初始化

MOV AL,00011000B

OUT DX,AL

MOV CX,4

MOV BL,CL

MOV DI,OFFSET DA TBUF

CLD

NEXT:MOV DX,5002H ;输出ADC通道号

MOV AL,BL

OUT DX,AL

MOV DX,5003H

MOV AL,0000 0111B

OUT DX,AL ;该程序段的作用是

NOP ;

NOP ;通道锁存并启动A/D转换。

MOV AL,0000 0110B

OUT DX,AL

MOV DX, 5002H

W AIT: IN AL, DX ;查询A/D转换是否结束

TEST AL, 80H

JZ W AIT

MOV DX, 5000H

IN AL, DX ;读A/D转换结果至AL

STOSB

INC BL

LOOP NEXT

相关文档
最新文档