微机原理实验题库及答案

微机原理实验题库及答案
微机原理实验题库及答案

1、已知AX=4000H,BX=8000H,编写程序互换AX与BX寄存器的内容。要求使用MOV指令实现。

CODE SEGMENT

Assume CS:CODE

START: MOV AX,4000H

MOV BX,8000H

MOV CX,AX

MOV AX,BX

MOV BX,CX

MOV AH,4CH

INT 21H

CODE ENDS

END START

2、已知AX=4000H,BX=8000H,编写程序互换AX与BX寄存器的内容。要求使用PUSH和POP指令实现。

CODE SEGMENT

Assume CS:CODE

START: MOV AX,4000H

MOV BX,8000H

PUSH AX

PUSH BX

POP AX

POP BX

MOV AH,4CH

INT 21H

CODE ENDS

END START

3、设有以下定义的数据段,编写程序将5的平方值取出送AX寄存器。(TABLE DB 0,1,4,9,16,25,36,49,64,81)

DATA SEGMENT

TABLE DB 0,1,4,9,16,25,36,49,64,81

DATA ENDS

CODE SEGMENT

Assume CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

LEA SI,TABLE

MOV AL,[SI+5]

AND AX,00FFH

MOV AH,4CH

INT 21H

CODE ENDS

END START

4、设有以下定义的数据段,编写程序将9的平方值取出送AX寄存器。(TABLE DB 0,1,4,9,16,25,36,49,64,81)

DATA SEGMENT

TABLE DB 0,1,4,9,16,25,36,49,64,81

DATA ENDS

CODE SEGMENT

Assume CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

LEA SI,TABLE

MOV AL,[SI+9]

AND AX,00FFH

MOV AH,4CH

INT 21H

CODE ENDS

END START

5、设有字符串STRING DB 'I AM A STUDENT!',编写程序将其中的大写字母转换成小写字母并保存回原内存单元。

DATA SEGMENT

STRING DB 'I AM A STUDENT!'

LEN EQU $-STRING

DATA ENDS

CODE SEGMENT

Assume CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

MOV BX,OFFSET STRING

MOV CX,LEN

NEXT: MOV AL,[BX]

CMP AL,'A'

JB LOP

CMP AL,'Z'

JA LOP

ADD AL,20H

MOV [BX],AL

LOP: INC BX

DEC CX

JNZ NEXT

MOV AH,4CH

INT 21H

CODE ENDS

END START

6、设有字符串STRING DB 'I am a student!',编写程序将其中的小写字母转换成大写字母并保存回原内存单元。

DATA SEGMENT

STRING DB 'I am a student!'

LEN EQU $-STRING

DATA ENDS

CODE SEGMENT

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

MOV DS,AX

MOV BX,OFFSET STRING

MOV CX,LEN

NEXT: MOV AL,[BX]

CMP AL,'a'

JB LOP

CMP AL,'z'

JA LOP

SUB AL,20H

MOV [BX],AL

LOP: INC BX

DEC CX

JNZ NEXT

MOV AH,4CH

INT 21H

CODE ENDS

END START

7、设有字符串STRING DB 'I AM A STUDENT!',编写程序将其中的大写字母转换成小写字母并用DOS9号功能调用输出显示该字符串。

DATA SEGMENT

STRING DB 'I AM A STUDENT!$'

LEN EQU $-STRING

DATA ENDS

CODE SEGMENT

Assume CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

MOV BX,OFFSET STRING

MOV CX,LEN

NEXT: MOV AL,[BX]

CMP AL,'A'

JB LOP

CMP AL,'Z'

JA LOP

ADD AL,20H

MOV [BX],AL

LOP: INC BX

DEC CX

JNZ NEXT

MOV DX,offset STRING

MOV AH,09H

INT 21H

MOV AH,4CH

INT 21H CODE ENDS

END START

8、从键盘输入一个字符,是回车键退出,否则判断其是大写字母、小写字母还是其他字符,并输出显示相应的提示字符串。

DATA SEGMENT

INFOR1 DB 0AH,0DH, 'Please input a letter:$' ;0AH为换行,0DH为回车INFOR2 DB 0AH,0DH, 'You input a uppercase letter! $' ;输入大写字母INFOR3 DB 0AH,0DH, 'You input a lowercase letter! $' ;输入小写字母INFOR4 DB 0ah,0dh, 'You input other letter! $' ;输入其他字符

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

MOV DX,OFFSET INFOR1

MOV AH,09H ;输出字符串

INT 21H

MOV AH,01H ;输入字符

INT 21H

CMP AL,0DH

JZ NEXT

CMP AL, 'A'

JB OTHER

CMP AL, 'Z'

JBE UPPER

CMP AL, 'a'

JB OTHER

CMP AL, 'z'

JBE LOWER

UPPER: MOV DX,OFFSET INFOR2

MOV AH,09H

INT 21H

JMP NEXT

LOWER: MOV DX,OFFSET INFOR3

MOV AH,09H

INT 21H

JMP NEXT

OTHER: MOV DX,OFFSET INFOR4

MOV AH,09H

INT 21H

NEXT: MOV AH,4CH

INT 21H CODE ENDS

END START

9、从键盘输入一个字符,是回车键退出,否则判断其是数字、大写字母还是其他字符,并输出显示相应的提示字符串。

DATA SEGMENT

INFOR1 DB 0AH,0DH, 'Please input a letter:$' ;0AH为换行,0DH为回车INFOR2 DB 0AH,0DH, 'You input a digit!$' ;输入数字

INFOR3 DB 0AH,0DH, 'You input a uppercase letter! $' ;输入大写字母INFOR4 DB 0ah,0dh, 'You input other letter! $' ;输入其他字符

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

MOV DX,OFFSET INFOR1

MOV AH,09H ;输出字符串

INT 21H

MOV AH,01H ;输入字符

INT 21H

CMP AL,0DH

JZ NEXT

CMP AL, '0'

JB OTHER ;小于0

CMP AL, '9'

JBE DIGIT ;大于等于0,小于等于9,为数字

CMP AL, 'A'

JB OTHER

CMP AL, 'Z'

JBE UPPER

DIGIT: MOV DX,OFFSET INFOR2

MOV AH,09H

INT 21H

JMP NEXT

UPPER: MOV DX,OFFSET INFOR3

MOV AH,09H

INT 21H

JMP NEXT

OTHER: MOV DX,OFFSET INFOR4

MOV AH,09H

INT 21H

NEXT: MOV AH,4CH

INT 21H

CODE ENDS

END START

10、从键盘输入一个字符,是回车键退出,否则判断其是数字、小写字母还是其他字符,并输出显示相应的提示字符串。

DATA SEGMENT

INFOR1 DB 0AH,0DH, 'Please input a letter:$' ;0AH为换行,0DH为回车INFOR2 DB 0AH,0DH, 'You input a digit! $' ;输入数字

INFOR3 DB 0AH,0DH, 'You input a lowercase letter! $' ;输入小写字母INFOR4 DB 0ah,0dh, 'You input other letter! $' ;输入其他字符

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

MOV DX,OFFSET INFOR1

MOV AH,09H ;输出字符串

INT 21H

MOV AH,01H ;输入字符

INT 21H

CMP AL,0DH

JZ NEXT

CMP AL, '0'

JB OTHER ;小于0

CMP AL, '9'

JBE DIGIT ;大于等于0,小于等于9,为数字

CMP AL, 'a'

JB OTHER

CMP AL, 'z'

JBE LOWER

DIGIT: MOV DX,OFFSET INFOR2

MOV AH,09H

INT 21H

JMP NEXT

LOWER: MOV DX,OFFSET INFOR3

MOV AH,09H

INT 21H

JMP NEXT

OTHER: MOV DX,OFFSET INFOR4

MOV AH,09H

INT 21H

NEXT: MOV AH,4CH

INT 21H

CODE ENDS

END START

11、在数据段中有一变量名为A的字符串(字符串内容自己定义),编程实现将这些字符以相反的次序传送到数据段变量名为B的内存中。

DATA SEGMENT

A D

B '123456789'

N EQU $-A

B DB N DUP(?)

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

LEA SI,A

LEA DI,B

ADD DI,N-1

MOV CX,N

AGAIN: MOV AL,[SI]

MOV [DI],AL

INC SI

DEC DI

LOOP AGAIN

MOV AH,4CH

INT 21H

CODE ENDS

END START

12、编写程序,将内存中偏移地址为1000H开始的连续100个字节送往1050H 开始的连续100个字节的内存单元中。(提示:需判断数据区有无重叠)DATA SEGMENT

ORG 1000H

A D

B 100 DUP('A')

ORG 1050H

B DB 100 DUP(?)

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

LEA SI,A

LEA DI,B

MOV CX,100

CMP SI,DI ;比较A的首地址和B的首地址

JB SHOU ;A的首地址小于B的首地址,不存在覆盖问题,从A的首地址开始传送

MOV BX,SI ;把A的首地址SI存入BX中

ADD BX,99

MOV DX,DI ;把B的首地址DI存入DX中

ADD DX,99

CMP BX,DI ;比较A的尾地址和B的首地址

JA SHOU ;A的首地址大于B的首地址,A的尾地址大于B的首地址,不存在覆盖问题,从A的首地址开始传送

JB NEXT ;否则存在覆盖问题,从A的尾地址开始传送

NEXT: MOV SI,BX

MOV DI,DX

WEI: MOV AL,[SI]

MOV [DI],AL

DEC SI

DEC DI

LOOP WEI

JMP EXIT

SHOU: MOV AL,[SI]

MOV [DI],AL

INC SI

INC DI

LOOP SHOU

EXIT: MOV AH,4CH

INT 21H

CODE ENDS

END START

13、编写程序,将内存中偏移地址为1000H开始的连续100个字节送往2000H 开始的连续100个字节的内存单元中。(提示:需判断数据区有无重叠)

DATA SEGMENT

ORG 1000H

A D

B 100 DUP('A')

ORG 2000H

B DB 100 DUP(?)

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

LEA SI,A

LEA DI,B

MOV CX,100

CMP SI,DI ;比较A的首地址和B的首地址

JB SHOU ;A的首地址小于B的首地址,不存在覆盖问题,从A的首地址开始传送

MOV BX,SI ;把A的首地址SI存入BX中

ADD BX,99

MOV DX,DI ;把B的首地址DI存入DX中

ADD DX,99

CMP BX,DI ;比较A的尾地址和B的首地址

JA SHOU ;A的首地址大于B的首地址,A的尾地址大于B的首地址,不存在覆盖问题

,从A的首地址开始传送

JB NEXT ;否则存在覆盖问题,从A的尾地址开始传送

NEXT: MOV SI,BX

MOV DI,DX

WEI: MOV AL,[SI]

MOV [DI],AL

DEC SI

DEC DI

LOOP WEI

JMP EXIT

SHOU: MOV AL,[SI]

MOV [DI],AL

INC SI

INC DI

LOOP SHOU

EXIT: MOV AH,4CH

INT 21H

CODE ENDS

END START

14、编写程序,将内存中偏移地址为1050H开始的连续100个字节送往1000H 开始的连续100个字节的内存单元中。(提示:需判断数据区有无重叠)DATA SEGMENT

ORG 1050H

A D

B 100 DUP('A')

ORG 1000H

B DB 100 DUP(?)

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

LEA SI,A

LEA DI,B

MOV CX,100

CMP SI,DI ;比较A的首地址和B的首地址

JB SHOU ;A的首地址小于B的首地址,不存在覆盖问题,从A的首

地址开始传送

MOV BX,SI ;把A的首地址SI存入BX中

ADD BX,99

MOV DX,DI ;把B的首地址DI存入DX中

ADD DX,99

CMP BX,DI ;比较A的尾地址和B的首地址

JA SHOU ;A的首地址大于B的首地址,A的尾地址大于B的首地址,不存在覆盖问题

,从A的首地址开始传送

JB NEXT ;否则存在覆盖问题,从A的尾地址开始传送

NEXT: MOV SI,BX

MOV DI,DX

WEI: MOV AL,[SI]

MOV [DI],AL

DEC SI

DEC DI

LOOP WEI

JMP EXIT

SHOU: MOV AL,[SI]

MOV [DI],AL

INC SI

INC DI

LOOP SHOU

EXIT: MOV AH,4CH

INT 21H

CODE ENDS

END START

15、在数据段中连续存放着10个无符号数,编程找出其中的最大数,并将其存放在该数据区的后面。

DATA SEGMENT

BUF DB 12H,34H,7H,25H,56H,2H,0H,18H,3H,55H

MAX DB 0

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

MOV SI,OFFSET BUF

MOV CX,10

AGAIN: MOV AL,[SI]

CMP AL,MAX

JB NEXT ;AX中的数小

MOV MAX,AL ;把AX中较大的数送入MAX中

NEXT: INC SI

LOOP AGAIN

MOV AH,4CH

INT 21H

CODE ENDS

END START

微机原理试题及答案

1 一、选择题(20分,在每小题的4个备选答案中选出一个正确的答案编号填写在该题空白处,每题2分) 1.指令MOV DX,[BX]的寻址方式是 D 。 (A)立即寻址(B)直接寻址(C)寄存器寻址(D)寄存器间接寻址2.若AL的内容为3FH,执行SHL AL,1指令后,AL的内容为 A 。 (A)7EH (B)1FH (C)9FH (D)7FH 解析:shl al ,1 即目的操作数各位左移一次,移动一次,相当于将目的操作数乘以2。3fh=63 63*2=126 126=7eh 故选A 3.属于在工作中需定时刷新的存储器的芯片是 B 。 (A)SRAM (B)DRAM (C)EEPROM (D)EPROM 4.某EPROM芯片上有19条地址线A 0~A 18 ,它的容量为 C 。 (A)128K (B)256K (C)512K (D)1024K 5.8086/8088CPU的SP寄存器是多少位的寄存器 B 。 (A)8位(B)16位(C)24位(D)32位 6.在STOSB指令执行的时候,隐含着寄存器的内容作为操作数的偏移地址, 该寄存器是 D 。 (A)SP (B)BX (C)SI (D)DI 解析:stos数据串存储指令功能:将累加器al或ah中的一个字或字节,传送到附加段中以di为目标指针的目的串中,同时修改di,以指向串中的下一个单元。 7.8255工作在方式0时,下面哪种说法不正确 C 。 (A)A口输入无锁存能力(B)A、B口输出有锁存能力 (C)C口输入有锁存能力(D)A、B、C三个口输出均有锁存能力 解析:对于方式0,规定输出信号可以被锁存,输入不能锁存 8.采用DMA方式来实现输入输出是因为它 A 。 (A)速度最快(B)CPU可不参与操作(C)实现起来比较容易(D)能对突发事件做出实时响应 9.工作在最小模式下,8086/8088CPU芯片中,将地址信号锁存的信号是 C 。 (A)DT/R (B)DEN (C)ALE (D)AEN 10.在LOOP指令执行的时候,隐含着对计数器减1的操作,该计数器是用寄存 器 C 。 (A)AX (B)BX (C)CX (D)DX 解析:loop:循环指令。指令执行前必须事先见重复次数放在cx寄存器中,每执行一次loop指令,cx自动减1。 二、填空题(每小题2分,共10分) 1.两个无符号数相等,该两数相减后ZF标志= 1 。解析:zf: 全零标志位。本次运算结果为0时,zf=1,否则zf=0。 2.执行LODSB后,SI的内容较该指令执行前增加1,说明DF= 0 。

微机原理及应用试题库(附答案)

《微机原理及应用》试题库 1. 8086和8088的引脚信号中, D 为地址锁存允许信号引脚。 A.CLK B.INTR C.NMI D.ALE 2. 下面的哪项是有效标识符: B A . 4LOOP: B. DELAYIS: C. MAIN A/B: D. GAMA$1: 3. 如图所示的三态输出电路,当 A 时,V B≈V DD。 A. E(ENABLE)=1, A=1 B. E(ENABLE)=1, A=0 C. E(ENABLE)=0, A=1 D. E(ENABLE)=0, A=0 4. 设(SS)=2000H,(SP)=0100H,(AX)=2107H,则执行指令PUSH AX 后,存放数据21H的物理地址是 D 。 A. 20102H B. 20101H C. 200FEH D. 200FFH 5. 汇编语言中,为了便于对变量的访问, 它常常以变量名的形式出现在程序中, 可以认为它是存放数据存储单元的 A 。 A.符号地址B.物理地址C.偏移地址D.逻辑地址 6. 下列四个寄存器中,不能用来作为间接寻址方式的寄存器是 A 。 A. CX B. BX C. BP D. DI (C)7. 执行下列程序段: MOV AX,0 MOV BX,1 MOV CX,100 AA:ADD AX,BX INC BX LOOP AA HLT 执行后的结果:(AX)= ,(BX)= 。 A. 5050,99 B. 2500,100 C. 5050,101 D. 2550,102 8. 假设V1和V2是用DW定义的变量,下列指令中正确的是 A 。 A.MOV V1, 20H B.MOV V1, V2 C.MOV AL, V1 D.MOV 2000H, V2 9. – 49D的二进制补码为 A 。

微机原理及应用实验(题目)

微机原理及应用实验 实验一开发环境的使用 一、实验目的 掌握伟福开发环境的使用方法,包括源程序的输入、汇编、修改;工作寄存器内容的查看、修改;内部、外部RAM内容的查看、修改;PSW中个状态位的查看;机器码的查看;程序的各种运行方式,如单步执行、连续执行,断点的设置。二、实验内容 在伟福开发环境中编辑、汇编、执行一段汇编语言程序,把单片机片内的 30H~7FH 单元清零。 三、实验设备 PC机一台。 四、实验步骤 用连续或者单步的方式运行程序,检查30H-7FH 执行前后的内容变化。五、实验思考 1.如果需把30H-7FH 的内容改为55H,如何修改程序? 2.如何把128B的用户RAM全部清零? 六、程序清单 文件名称:CLEAR.ASM ORG 0000H CLEAR: MOV R0,#30H ;30H 送R0寄存器 MOV R6,#50H ;50H 送R6寄存器(用作计数器) CLR1: MOV A,#00H ;00 送累加器A MOV @R0,A ;00 送到30H-7FH 单元 INC R0 ;R0 加1 DJNZ R6,CLR1 ;不到50H个字节,继续 WAIT: LJMP WAIT END 实验二数据传送 一、实验目的 掌握MCS-51指令系统中的数据传送类指令的应用,通过实验,切实掌握数据传送类指令的各种不同的寻址方式的应用。 二、实验内容 1.编制一段程序,要求程序中包含7中不同寻址方式。 2.编制一段程序,将片内RAM30H~32H中的数据传送到片内RAM38H~3AH中。 3.编制一段程序,将片内RAM30H~32H中的数据传送到片外RAM1000H~1002H 中。 4.编制一段程序,将片内RAM40H~42H中的数据与片外RAM2000H~2002H中的数据互换。 三、实验设备 PC机一台。

微机原理试题及答案

微机原理试题及答案 微机原理试题及答案 一、填空题(每空1分,共15分) 1、在计算机中,对带符号数的运算均采用补码。带符号负数1100 0011的补码为_10111101_。2、单片机通常采用“三总线”的应用模式,芯片内部设有单独的地址总线、数据总线_ 和控制总线。 3、当使用80C51单片机时,需要扩展外部程序存储器,此时EA应为_0__。 4、若(A)=B3H,(R0)=A8H,执行指令XRL A,R0之后,(A)=_1BH__。 5、在80C51单片机中,带借位减法SUBB指令中,差的D7需借位时,_CY_=1,差的D3需借位时,AC_=1。 6、80C51单片机中,在调用子程序前,用_PUSH__指令将子程序中所需数据压入堆栈,进入执行子程序时,再用___POP__指令从堆栈中弹出数据。 7、在十六进制数与ASCII码值的转换过程中,当十六进制数在0~9之间时,其对应的ASCII码值为该十六进制数加___30H______。 8、外部中断INT0和INT1有两种触发方式:___电平触发方式_____和__边沿触发方式__。 9、在单片机串行通信中,依发送与接收设备时钟的配置情况,串行通信可以分为 __异步通信___和__同步通信_。10、若累加器A中的数据为

0111 0010B,则PSW中的P=__0___。二、选择题(每题1分,共15分) 1、单片机是在一片集成电路芯片上集成了以下部分,除了( D ) A、微处理器 B、存储器 C、I/O接口电路 D、串口通信接口2、一个机器周期包含多少个晶振周期(D ) A、2 B、6 C、8 D、12 3、80C51单片机有21个特殊功能寄存器,其中与串行口相关的有以下几个,除了( B ) A、SBUF B、TCON C、SCON D、PCON 4、 80C51系列单片机具有4个8位的并行I/O口,其中哪个口工作时需要外接上拉电阻(A ) A、P0 B、P1 C、P2 D、P3 5、寄存器中的内容为地址,从该地址去取操作数的寻址方式称为( C ) A、寄存器寻址 B、直接寻址 C、寄存器间接寻址 D、变址寻址6、源地址为1005H。目的'地址为 0F87H。当执行指令“JC rel”时,rel为( B )。A、7EH B、80H C、82H D、84H 7、若(R0)=30H,(30H)=75H,(75H)=90H,执行指令MOV A,@R0后,(A)=__B____。A、30H B、75H C、90H D、00H 8、下列哪个语句是起始地址设置伪指令( A )。A、ORG B、END C、DW D、EQU 9、在80C51单片机中,各中断优先级最低的是( D )。A、外部中断0 B、外部中断1 C、定时器0 D、计数器1 10、80C51单片机的中断响应时间至少需要( C )个完整的机器周期。A、1 B、2 C、3 D、5 11、在80C51单片机中,

内蒙古工业大学微机原理实验指导答案.doc

被嗅材尊机原理与旅用实验指导布实验 程禹够告 沽说:信息工程修陇班披, 电8 77-7班g生名:Eg 样号,2011202030 实验一编辑、汇编、 连接、调试程序的使用 程序设计A 设计要求 (1)将FFFFH 送到AX, SI, DI, BP, DS, ES 寄存器 (2)编程(利用DEBUG调试程序,每执行一次T命令后,记录相关寄存器

内容,并判断是否正确。)程序如下: CODE SEGMENT ASSUME CS:CODE START PROC FAR STTPUSH DS SUB AX,AX PUSH AX MOV AX,0FFFFH MOV SI,AX MOV DI,AX MOV BP,AX MOV DS,AX MOV ES,AX RET STARTENDP CODE ENDS END STT B、设计要求 ⑴将1,2,3,4,5分别送到数据段偏移地址为1000H, 1001H, 1002H, 1003H, 1004H,单元中。 ⑵编程 DATA SEGMENT ORG 1000H DATA ENDS CODE SEGMENT ASSUME CS:CODE START PROC FAR STTPUSH DS SUB AX,AX PUSH AX MOV AX, DATA MOV DS,AX MOV AL,1 MOV DS:[1000H],AL

MOV AL,2 MOV DS:[1001H],AL MOV AL,3 MOV DS:[1002H],AL MOV AL,4 MOV DS:[1003H],AL MOV AL,5 MOV DS:[1004H],AL RET STARTENDP CODE ENDS END STT 实验二、加法程序设计 设计内容A、设计要求 (1)在数据段偏移地址1000H处开始,连续存放有3字节的数据(高位对应高地 址,低位对应低地址),1003H处开始连续存放有两字节的数据(高对高,低 对低),求这两数据之和,并将结果放在流量数据之后。(eg: 1234 56H+78 9AH=12 AC FOH) (2)编程 DATA SEGMENT ORG 1000H H1 DB56H J34H,12H,9AH,78H H2 DB 3DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START PROC FAR STTPUSH DS SUB AX,AX PUSH AX MOV AX,DATA MOV DS,AX MOVSIJOOOH MOV DI,1003H MOV BX,1005H MOV CX,2 CLC LP:MOVAL,[SI] MOV DL,[DI[ ADCAL,DL MOV [BX],AL INC SI

微机原理-期末考试题库及答案(含3套试卷)

微型计算机原理与接口技术综合测试题一 一、单项选择题(下面题只有一个答案是正确的,选择正确答案填入空白处) 1.8086CPU通过(1 )控制线来区分是存储器访问,还是I/O访问,当CPU执行IN AL,DX 指令时,该信号线为(2 )电平。 (1) A. M/ B. C. ALE D. N/ (2) A. 高 B. 低 C. ECL D. CMOS 2.n+1位有符号数x的补码表示范围为()。 A. -2n < x < 2n B. -2n ≤ x ≤ 2n -1 C. -2n -1 ≤ x ≤ 2n-1 D. -2n < x ≤ 2n 3.若要使寄存器AL中的高4位不变,低4位为0,所用指令为()。 A. AND AL, 0FH B. AND AL, 0FOH C. OR AL, 0FH D. OR AL 0FOH 4.下列MOV指令中,不正确的指令是()。 A. MOV AX, BX B. MOV AX, [BX] C. MOV AX, CX D. MOV AX, [CX] 5.中断指令INT 17H的中断服务程序的入口地址放在中断向量表地址()开始的4个存贮单元内。 A. 00017H B. 00068H C. 0005CH D. 0005EH 6.条件转移指令JNE的条件是()。 A. CF=0 B. CF=1 C. ZF=0 D. ZF=1 7. 在8086/8088 CPU中,一个最基本的总线读写周期由(1 )时钟周期(T状态)组成,在T1状态,CPU往总线上发(2 )信息。 ⑴ A. 1个 B. 2个 C. 4个 D. 6个

⑵ A. 数据 B . 地址 C. 状态 D. 其它 8. 8086有两种工作模式, 最小模式的特点是(1 ),最大模式的特点是(2 )。 ⑴ A. CPU提供全部控制信号 B. 由编程进行模式设定 C. 不需要8286收发器 D. 需要总线控制器8288 ⑵ A. M/ 引脚可直接引用 B. 由编程进行模式设定 C. 需要总线控制器8288 D. 适用于单一处理机系统 9.在8086微机系统的RAM 存储单元器0000H:002CH开始依次存放23H,0FFH,00H,和0F0H四个字节,该向量对应的中断号是( )。 A. 0AH B. 0BH C. 0CH D. 0DH 10.真值超出机器数表示范围称为溢出,,此时标志寄存器中的( )位被置位 A. OF B AF C PF D CF 11.8086 系统中内存储器地址空间为1M,而在进行I/O读写是,有效的地址线是( ) A . 高16位 B. 低16位 C. 高8位 D. 低8位 12.8086 CPU中段寄存器用来存放( ) A. 存储器的物理地址 B. 存储器的逻辑地址 C. 存储器的段基值 D. 存储器的起始地址 13.8259A可编程中断控制器的中断服务寄存器ISR用于( ) A.记忆正在处理中的中断 B. 存放从外设来的中断请求信号 C.允许向CPU发中断请求 D.禁止向CPU发中断请求 14.8253 可编程定时/计数器的计数范围是( ) A. 0-255 B. 1-256 C. 0-65535 D. 1-65536 15. 在8086中,(BX)=8282H,且题中指令已在队列中,则执行INC [BX]指令需要的总

微机原理及应用实验

实验报告1 实验项目名称:I/O地址译码;简单并行接口同组人: 实验时间:实验室:微机原理实验室K2-407 指导教师:胡蔷 一、实验目的: 掌握I/O地址译码电路的工作原理,简单并行接口的工作原理及使用方法。 二、预备知识: 输入、输出接口的基本概念,接口芯片的(端口)地址分配原则,了解译码器工作原理及相应逻辑表达式,熟悉所用集成电路的引线位置及各引线用途;74LS245、74LS373的特性及作用。 三、实验内容245输入373输出 使用Protues仿真软件制作如下电路图,使用EMU8086编译软件编译源程序,生成可执行文件(nn . exe),在Protues仿真软件中加载程序并运行,分析结果。 编程实现:读8个开关的状态,根据输入信号控制8个发光二极管的亮灭。 图1-1 245输入373输出 四、程序清单

五、实验结果 六、结果分析 七、思考题: 1、如果用74LS373作输入接口,是否可行?说明原因;用74LS245作输出接口,是否可行?说明原因。

实验报告2 实验项目名称:可编程定时器/计数器;可编程并行接口同组人: 实验时间:实验室:微机原理实验室K2-407 指导教师:胡蔷 一、实验目的: 掌握8253的基本工作原理和编程应用方法。掌握8255的工作原理及使用方法。 二、预备知识: 8253的结构、引脚、控制字,工作方式及各种方式的初始化编程及应用。 8255的内部结构、引脚、编程控制字,工作方式0、1、2的区别,各种方式的初始化编程及应用。 三、实验内容: ⑴8253输出方波 利用8253的通道0和通道1,设计产生频率为1Hz的方波。设通道0的输入时钟频率为2MHz,8253的端口地址为40H,42H,44H,46H。通道0的输入时钟周期0.5μs,其最大定时时间为:0.5μs×65536 = 32.768ms,要产生频率为1Hz(周期= 1s)的方波,利用;一个通道无法实现。可用多个通道级连的方法,将通道0的输出OUT0作通道1的输入时钟信号。设通道0工作在方式2(频率发生器),输出脉冲周期= 10 ms,则通道0的计数值为20000(16位二进制)。周期为4 ms的脉冲作通道1的输入时钟,要求输出端OUT1输出方波且周期为1s,则通道1工作在方式3(方波发生器),计数值为100(8位;二进制)。硬件连接如图2-1。

微机原理试题及答案 (1)

学年第学期微机原理及应用(A)课程试卷 卷16 班级姓名得分任课教师 一、选择题:(每题分,共18分) 1、DMAC向CPU发出请求信号,CPU响应并交出总线控制权后将( 3)。 反复执行空操作,直到DMA操作结束 进入暂停状态, 直到DMA操作结束 进入保持状态, 直到DMA操作结束 进入等待状态, 直到DMA操作结束 2、有一个实时数据采集系统,要求10ms进行一次数据采集,然后进行数据 处理及显示输出,应采用的数据传送方式为( 3 )。 无条件传送方式查询方式 中断方式直接存储器存取方式 3、在数据传送过程中,数据由串行变并行,或由并行变串行的转换可通过 (3 )来实现。 计数器寄存器移位寄存器 D触发器 4、8088 CPU输入/输出指令可寻址外设端口的数量最大可达(4 )个。 128 256 16K 64K 5、CPU响应中断后,通过( 4)完成断点的保护。 执行开中断指令执行关中断指令 执行PUSH指令内部自动操作 6、并行接口芯片8255A具有双向数据传送功能的端口是(1 )。 PA口PB口 PC口控制口 7、8088CPU处理动作的最小时间单位是(2 )。 指令周期时钟周期机器周期总线周期8.堆栈是内存中(4 )。 先进先出的ROM区域后进先出的ROM区域 先进先出的RAM区域后进先出的RAM区域

9、计算机中广泛应用的RS-232C实质上是一种(3 )。 串行接口芯片串行通信规程(协议) 串行通信接口标准系统总线标准 5--1 10、高速缓冲存储器(CACHE)一般是由( 1 )芯片组成。 SRAM DRAM ROM EPROM 11、鼠标器是一种(3 )。 手持式的作图部件手持式的光学字符识别设备 手持式的座标定位部件手持式扫描器 12、传送速度单位“bps”的含义是( 2 )。 bytes per second bits per second baud per second billion bytes per second 二、填空题:(每空1分,共12分) 1、CPU在响应中断后,自动关中。为了能实现中断嵌套,在中断服务程序中, CPU必须在保护现场后,开放中断。 2、在计算机运行的过程中,有两股信息在流动,一股是数据,另 一股则是控制命令。 3、指令MOV BX,MASK[BP]是以 ss 作为段寄存器。 4、指令REPE CMPSB停止执行时,表示找到第一个不相等的字符 或 CX=0 。 5、设CF=0,(BX)= 7E15H,(CL)= 03H,执行指令 RCL BX,CL后, (BX) = ,(CF)=,(CL)=。0F0A9H 1 3 6、在8088 CPU中,一个总线周期是 CPU从存储器或I/O端口存取一个字 节的时间。 8253定时/计数器有 3 个独立的16位计数器,每个计数器都可按二进制或 bcd 来计数。 三、程序设计(共40分) 1.(10分)假设X和X+2单元与Y和Y+2单元中分别存放的是两个双

微机原理及应用实验报告81487

实 验 报 告 课 程 名 称 实 验 名 称 实 验 日 期 学 生 专 业 学 生 学 号 学 生 姓 名 教 师 姓 名 成 绩 南京理工大学机械工程学院 微机原理及应用 实验1 DEBUG 操作实验 实验2 汇编程序设计实验 实验3 8253定时/计数器实验 实验4 8255 并行接口实验 年 月 日 至 年 月 日

实验一DEBUG命令及其操作 一、实验目的 1.熟练掌握debug的常用命令,学会用debug来调试程序。 2.深入了解数据在存储器中的存取方法及堆栈中数据的压入与弹出。 3.掌握各种寻址方法以及简单指令的执行过程。 二、实验要求 1.实验前要作好充分准备,包括汇编程序清单、调试步骤、调试方法以及对程序结果的分析等。 2.本实验要求在PC机上进行。 3.本实验只要求在DEBUG调试状态下进行,包括汇编程序,调试程序,执行程序。三、实验内容 ●实验内容1:学习用DEBUG调试工具进行源程序的输入、汇编、调试和执行。 实验报告要求: 1.写出运行结果; 2.小结debug常用命令及使用体会 答:1.原文已给出(略) 2.a 汇编 d显示内存单元内容 e修改单元内存内容 g执行命令 t单步(或多步)调试 n指定文件路径文件名(含扩展名) u反汇编 r查看寄存器值及修改 l加载程序 w写盘命令 体会:提升学习热情和动手能力有助于理解代码执行过程 ●实验内容2 设AX=3000H,BX=5000H,请编一程序段将AX的内容和BX的内容进行交换。请用堆栈作为两寄存器交换内容的中间存储单元,用DEBUG调试程序进行汇编与调试。 实验报告要求: 1.写出完成上述功能的程序段; 2.单步执行,并记录寄存器AX, BX及堆栈指针SP的值 答: A100 Mov ax,3000 ;ax:3000 bx:0000 sp:ffee Mov bx,5000 ;ax:3000 bx:5000 sp:ffee Push ax ;ax:3000 bx:5000 sp:ffec

微机原理实验报告

西安交通大学实验报告 课程_微机与接口技术第页共页 系别__生物医学工程_________实验日期:年月日 专业班级_____组别_____交报告日期:年月日 姓名__ 学号__报告退发 ( 订正、重做 ) 同组人_教师审批签字 实验一汇编语言程序设计 一、实验目的 1、掌握Lab6000p实验教学系统基本操作; 2、掌握8088/8086汇编语言的基本语法结构; 3、熟悉8088/8086汇编语言程序设计基本方法 二、实验设备 装有emu8086软件的PC机 三、实验内容 1、有一个10字节的数组,其值分别是80H,03H,5AH,FFH,97H,64H,BBH,7FH,0FH,D8H。编程并显示结果: 如果数组是无符号数,求出最大值,并显示; 如果数组是有符号数,求出最大值,并显示。 2、将二进制数500H转换成二-十进制(BCD)码,并显示“500H的BCD是:” 3、将二-十进制码(BCD)7693转换成ASCII码,并显示“BCD码7693的ASCII是:” 4、两个长度均为100的内存块,先将内存块1全部写上88H,再将内存块1的内容移至内存块2。在移动的过程中,显示移动次数1,2 ,3…0AH…64H(16进制-ASCII码并显示子

程序) 5、键盘输入一个小写字母(a~z),转换成大写字母 显示:请输入一个小写字母(a~z): 转换后的大写字母是: 6、实现4字节无符号数加法程序,并显示结果,如99223344H + 99223344H = xxxxxxxxH 四、实验代码及结果 1.1、实验代码: DATA SEGMENT SZ DB 80H,03H,5AH,0FFH,97H,64H,0BBH,7FH,0FH,0D8H;存进数组 SHOW DB 'THE MAX IS: ','$' DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA ;把数据的基地址赋给DS MOV DS,AX MOV DX,OFFSET SHOW ;调用DOS显示字符串 MOV AH,09H INT 21H MOV SI ,OFFSET SZ ;数组的偏移地址赋给SI MOV CX,10 ;存进数组的长度给CX MOV DH,80H ;将数组的第一个数写进DH NEXT: MOV BL,[SI] ;将数组的第一个数写进BL CMP DH,BL ;比较DH和BL中数的到校 JAE NEXT1 ;如果DH中的数大于BL中,将跳转到NEXT1 MOV DH,BL ;如果DH中的数小于BL中,将BL中的数赋给DH NEXT1: INC SI ;偏移地址加1 LOOP NEXT;循环,CX自减一直到0,DH中存数组的最大值 ;接下来的程序是将将最大值DH在屏幕上显示输出 MOV BX,02H NEXT2: MOV CL,4 ROL DH,CL ;将DH循环右移四位

微机原理试题集题库(带答案)

微机原理及应用习题集库 (2) 一、填空 (2) 二、单项选择题 (8) 三、程序分析题(每小题6分,共24分) (22) 四、判断题(在对的后面画√,错的后面画×): (34) 五:分析判断题(判断对错,并指出错误原因) (42) 六、简答题: (45) 七、程序题 (51) 八、接口芯片的综合编程题 (66) (一)8255A (66) (二)8259A (72) (三). 其它端口编程题 (75)

微机原理及应用习题集库 (请认真复习4、5、7、10、11章后的习题) 一、填空 1.87的原码是 0101 0111B=57H ,补码是 01010111B ,反码 01010111B 。 2.SP总是指向栈顶,若原先SP=2000H,SS=2000H,问CPU执行指令PUSH AX 后,AL内容压入物理地址为 21FFEH 存储单元中,AH内容压入物理地址为 21FFFH 存储单元中。 3.以BX基址寻址,约定的段寄存器是 DS ,以BP基址寻址,约定的段寄存 器是 SS ,变址寻址约定的段寄存器是 DS 。 4.假设某个字的值是1234H,其低位字节地址是20H,高位字节地址是21H,那么 该字地址是 20H 。 5.8086/8088的状态标志有 6(SF、PF、AF、OF、ZF、CF)个。8086/8088系统中,存储器是分段的,每段最大长度是 64K 字节,段内偏移地址从 0000H 到 FFFFH 。 6、CPU访问存储器进行读写操作时,通常在 T3状态去检测READY ,一旦检测

到READY无效,就在其后插入一个 T w周期。 7、汇编语言源程序中的语句有三种类型,它们是指令语句,伪指令 语句,宏指令语句。 8、、8086CPU寻址外设可以有两种方式,一种是直接寻址方式,另一种是间 接寻址方式。 9、CPU与外设之间的连接部件称为 I/O接口,它的基本功能是在 CPU与外设之间起缓冲作用。 10、C PU从主存取出一条指令并执行该指令的时间称(),它通常用若干个() 来表示,而后者又包括若干个()。 ①指令周期②机器周期③时钟周期 答:1-2-3 14、数据的输入/输出指的是CPU与 I/O接口进行数据交换。 15.已知X= -120,则X的原码(用八位二进制表示)是____________,补码(用八位二进制表示)是____________。 16、8088中的指令INT n用(N )指定中断类型。 17、8088的ALE引脚的作用是(地址锁存允许)。 18.一片8255A端口A有( 3 )种工作方式,端口B有( 2 )种工作方式。 19.当8255A口工作在方式1输出时,A口输入信号联络线的名称是 IBF ,

微机原理_期末考试试题答案

微机原理与接口技术考试试卷(A) 专业学号姓名成绩 一、填空题(每空1分,共20分) 1. 完成下列程序段,从240H端口读取数据,测试其是否为20H,若不是则将241H端口清0,否则转向NEXT。 MOV DX , (1) (2) AL, DX (3) AL, 20H (4)______ MOV DX,(5) MOV AL,0 OUT DX,AL ….. NEXT: …… 2. 图1中的一个共阴极数码管通过8255A和系统ISA总线相连,请完成下列程序段,使该数码管稳定显示“8”(字型编码为7FH)。 图1 MOV DX, (6) MOV AL, (7) OUT DX, AL ;初始化82C55 MOV DX, (8) MOV AL, (9) (10) ;数码管稳定显示“8” 3..8086 CPU有条地址线,可形成的存储器地址空间,地址范围为。 4..中断类型号为24H的中断向量存放在开始的存储单元。 5..一台微机的地址总线为16条,其RAM存储器容量为16KB,首地址为2000H,且地址是连续的,则可用的最高地址是________。 6..一个数据的有效地址EA = 1234H,且DS =5678H,则该数据在内存中的物理地址是________,该数据段的首单元的物理地址是________,末单元的物理地址是________。 7.若当前堆栈指针SP指向2006H单元,则向堆栈中压入5个字的内容后,SP应指向________。8.若8086 CPU引脚状态是M/IO=1,RD=1,WR=0,则此时执行的操作是________。

二、综合题(80分) 1.(10分) 一个异步串行通信口,通过TXD发送一帧数据的字符格式如图2的实线所示: 图2 如果线路上传送的字符格式包括7位ASCII码数据,一位奇偶校验位,一位停止位。要求:(1) 写出该帧字符所传送的数据值,并说明是奇校验还是偶校验。(2) 如果波特率为600bps,请计算传送上面这一帧数据所需要的时间。(3) 若波特率系数K=16,请计算发送时钟频率TXC的频率值。 2. (10分) 图3为两级译码构成口地址译码电路,PS输出低电平为片选信号。试问 图3 图4 (1) 开关K上合,PS的寻址范围是________。(2) 开关K下合,PS的寻址范围是________。 (3) 开关K下合,A3改接B,A4改接A,则PS的寻址范围是________________。 (4) 请用二进制表示法写出图4的译码电路所决定的端口地址。 3. (20分) 某系统外接电路如图5,8255A口地址为2F0H~2F3H,请设计源程序,一次性 的测试开关的位置,当K闭合时,LED亮,K断开时LED灭(提示:C口高4位应为方式0输入,低4位为方式0输出)。 图5 CODE SEGMENT ASSUME CS:CODE BEG: ;C口初始化 ;读C口

微机原理习题及答案

一、选择 1、在微型计算机中,微处理器的主要功能是进行( )。 D A、算术运算 B、逻辑运算 C、算术、逻辑运算 D、算术、逻辑运算及全机的控制 2、Pentium I属于()位CPU C A、16 B、8 C、32 D、64 3、Intel 8086属于()位CPU A A、16 B、8 C、32 D、64 4、CPU与I/O设备间传送的信号通常有( ) D A、控制信息 B、状态信息 C、数据信息 D、以上三种都有 5、存储器用来存放计算机系统工作时所需要的信息,即( )。 D A、程序 B、数据 C、技术资料 D、程序和数据 6、运算器的核心部件是( )。 D A、加法器 B、累加寄存器 C、多路开关 D、算逻运算单元 二、填空 1、内存可分为2大类:随机存储器RAM 和 2、数据总线是向的,地址总线是向的。 3、计算机的五大部件是:、、、、输出设备 4、总线可分为三类:、、 5、存储程序工作原理最先由提出 6、在计算机内部,一切信息的存取、处理和传送都是以形式进行的。 1、只读存储器ROM 2、双、单 3、运算器、控制器、存储器、输入设备 4、地址总线、数据总线、控制总线 5、冯·诺依曼 6、二进制 三、简答 1、冯·诺依曼型计算机的特点是什么? (1).以二进制表示指令和数据 (2).程序和数据存放在存储器中,从存储器中取指令并执行 (3).由运算器、控制器、存储器、输入设备、输出设备构成计算机硬件系统。 一、选择 1、在机器数______中,零的表示形式是唯一的()。BD A、原码 B、补码 C、反码 D、移码 2、计算机内部表示带符号整数通常采用()。C A、原码 B、反码 C、补码 D、移码

微机原理及应用 上机实验报告2 数据传送

课程名称:_________微机原理及应用___________指导老师:_____钟崴_______成绩:__________________ 实验名称:_________数据传送___________实验类型:________________同组学生姓名:__________ 一、实验目的和要求(必填)二、实验内容和原理(必填) 三、主要仪器设备(必填)四、操作方法和实验步骤 五、实验数据记录和处理六、实验结果与分析(必填) 七、讨论、心得 一、实验目的和要求(必填) 掌握MCS-51指令系统中的数据传送类指令的应用,通过实验,切实掌握数据传送类指令的各种不同的寻址方式的应用。 二、实验内容和原理(必填) 1.编制一段程序,要求程序中包含7中不同寻址方式。 2.编制一段程序,将片内RAM30H~32H中的数据传送到片内RAM38H~3AH中。 3.编制一段程序,将片内RAM30H~32H中的数据传送到片外RAM1000H~1002H中。 4.编制一段程序,将片内RAM40H~42H中的数据与片外RAM2000H~2002H中的数据互换。 三、主要仪器设备(必填) PC机一台。 四、操作方法和实验步骤 逐段编制程序,汇编无误后,用连续或者单步的方式运行程序,检查程序的运行结果,看是否达到预期的效果。 五、程序清单 1. ORG 0000H CLEAR MOV R0,#30H ;间接寻址 MOV A,#40H ;立即寻址 MOV @R0,A ;间接寻址 MOV A,30H ;直接寻址 MOV DPTR,#0100H ;间接寻址 MOV A,#36H MOVX @DPTR,A MOV R0,#50H ;立即寻址 MOV A,#10 MOVC A,@A+DPTR ;变址寻址 END

微机原理试题及答案

微机原理试题及答案 Revised as of 23 November 2020

学年第学期微机原理及应用(A)课程试卷 卷16 班级姓名得分任课教师 一、选择题:(每题分,共18分) 1、DMAC向CPU发出请求信号,CPU响应并交出总线控制权后将( )。 反复执行空操作,直到DMA操作结束 进入暂停状态, 直到DMA操作结束 进入保持状态, 直到DMA操作结束 进入等待状态, 直到DMA操作结束 2、有一个实时数据采集系统,要求10ms进行一次数据采集,然后进行数据处理及显示输出,应 采用的数据传送方式为()。 无条件传送方式查询方式 中断方式直接存储器存取方式 3、在数据传送过程中,数据由串行变并行,或由并行变串行的转换可通过()来实现。 计数器寄存器移位寄存器 D触发器 4、8088 CPU输入/输出指令可寻址外设端口的数量最大可达()个。 128 256 16K 64K 5、CPU响应中断后,通过()完成断点的保护。 执行开中断指令执行关中断指令 执行PUSH指令内部自动操作 6、并行接口芯片8255A具有双向数据传送功能的端口是()。 PA口 PB口 PC口控制口 7、8088CPU处理动作的最小时间单位是()。 指令周期时钟周期机器周期总线周期

8.堆栈是内存中()。 先进先出的ROM区域后进先出的ROM区域 先进先出的RAM区域后进先出的RAM区域 9、计算机中广泛应用的RS-232C实质上是一种()。 串行接口芯片串行通信规程(协议) 串行通信接口标准系统总线标准 5--1 10、高速缓冲存储器(CACHE)一般是由()芯片组成。 SRAM DRAM ROM EPROM 11、鼠标器是一种()。 手持式的作图部件手持式的光学字符识别设备 手持式的座标定位部件手持式扫描器 12、传送速度单位“bps”的含义是()。 b ytes per second bits per second baud per second billion bytes per second 二、填空题:(每空1分,共12分) 1、CPU在响应中断后,自动关中。为了能实现中断嵌套,在中断服务程序中,CPU必须在 后,开放中断。 2、在计算机运行的过程中,有两股信息在流动,一股是,另一股则是。 3、指令MOV BX,MASK[BP]是以作为段寄存器。 4、指令REPE CMPSB停止执行时,表示找到或。 5、设CF=0,(BX)= 7E15H,(CL)= 03H,执行指令 RCL BX,CL后, (BX)= , (CF)=,(CL)=。 6、在8088 CPU中,一个总线周期是。 7、8253定时/计数器有个独立的16位计数器,每个计数器都可按二进制或 来计数。 三、程序设计(共40分)

微机原理实验答案汇总

1.题目:编程将(AX)=2387、(BX)=192FH、(CX)=9256中的无符号数按由大到小排序,上机编程调试出程序,并将程序及排序结果记录在下面。 CODE SEGMENT ASSUME CS:CODE START: MOV AX,2387 MOV BX,192FH MOV CX,9256 CMP AX,BX JAE NEXT1 XCHG AX,BX NEXT1: CMP AX,CX JAE NEXT2 XCHG AX,CX NEXT2: CMP BX,CX JAE NEXT3 XCHG BX,CX NEXT3: MOV AH,4CH INT 21H CODE ENDS END START 2.题目:编程将(BX)=8600H、(CX)=3489H、(DX)=9235按有符号数由大到小排序,上机编程调试出程序,并将程序及排序结果记录在下面。 ;CODE SEGMENT ASSUME CS:CODE START: MOV BX,8600h MOV CX,3489H MOV DX,9235 CMP BX,CX JGE NEXT1 XCHG BX,CX NEXT1: CMP BX,DX JGE NEXT2 XCHG BX,DX NEXT2: CMP CX,DX JGE NEXT3 XCHG CX,DX NEXT3:

MOV AH,4CH INT 21H CODE ENDS END START 3.题目:在数据段中定义如下数据:32,34,89H,,编程将以上数据按有符号数进行排序,并将程序和结果记录下来。 DATA SEGMENT NUM DB 32,34,89H DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DAT START: MOV AX,DATA MOV DS,AX ;初始化DS LEA BX,NUM ;取有效地址到BX,以便访问要排序的数 MOV AL,[BX] CMP AL,[BX+1] JGE NEXT1 ;若第一个数大则跳转,否则将第一个与第二个数交换 XCHG AL,[BX+1] MOV [BX],AL NEXT1: CMP AL,[BX+2] JGE NEXT2;若第一个数大则跳转,否则将第一个与第三个数交换 XCHG AL,[BX+2] MOV [BX],AL NEXT2: MOV AL,[BX+1];将第二个和第三个数比较 CMP AL,[BX+2] JGE NEXT3;若第二个数大则跳转,否则将第二个与第三个数交换 XCHG AL,[BX+2] MOV [BX+1],AL NEXT3: MOV AH,4CH INT 21H CODE ENDS END START 4.题目:在数据段中定义如下数据:99,25,86,编程将以上数据按无符号数进行排序,上机调试出程序,并将程序和结果记录下来。 data segment num db 99h,25h,86h data ends code segment assume cs:code,ds:data start:mov ax,data

微机原理与应用实验报告

微机原理及应用实验报告 班级:机械1301班 :黄佳清 学号:0801130117 座位号: 中南大学机电工程学院

实验一单片机仿真开发机操作和MCS-51指令系统应用 一.实验目的 1、熟悉MCS-51单片机仿真开发机和开发调试软件的操作使用和调整; 2、学会编写和输入汇编语言源程序、对输入的源程序进行汇编; 3、掌握程序的调试和运行的各种方法。 三.实验容及步骤(完成分值:60分) 本实验秩序运行Keil uVersion2程序,设置为keil为纯软件仿真 1.新建工程项目 2.设置工程文件参数 3.编写新程序事例 4.调试程序直至能够运行出结果。 四.实验程序 AJMP MAIN ORG 0030H MAIN: MOV R0,#20H MOV R2,#0FH MOV A,#00H A1: MOV R0,A INC R0 INC A DJNZ R2,A1 MOV R0,#20H ;暂停,观察并记录! MOV DPTR,#7000H MOV R2,#0FH A2: MOV A,R0 MOVX DPTR,A INC R0 INC DPTR DJNZ R2,A2 MOV R0,#030H ;断点,观察并记录! MOV DPTR,#7000H MOV R2,#0FH A3: MOVX A,DPTR MOVX R0,A INC R0 INC DPTR DJNZ R2,A3 DO: LJMP DO END ;部存储器数据块赋值,搬运数据块到外部存储器,再搬运回部数据存储器。 五、附加题 1.将光标移到想要暂停的地方,MOV R0,#20H所在行,选择“执行到光

2.在MOV R0,#0A0H行设置断点,全速执行,暂停后观察并记录以下单元容 3.

微机原理实验参考答案(航大)

《微机原理》实验参考答案 实验1 汇编基本指令及顺序程序设计实验 实验2 分支与DOS中断功能调用程序设计实验 实验3 循环结构程序设计实验 实验4 存储器扩展实验 实验5 8259应用编程实验 实验1汇编基本指令及顺序程序设计实验 一、实验目的 1、掌握汇编语言的开发环境和上机过程; 2、掌握DEBUG命令; 3、掌握顺序程序设计方法; 4、掌握寻址方式; 5、理解和掌握汇编基本指令的功能。 二、实验内容 1、设堆栈指针SP=2000H,AX=3000H,BX=5000H;请编一程序段将AX和BX的内容进行交换。要求:用3种方法实现。 答:方法一CODE SEGMENT ASSUME CS:CODE START: MOV AX,3000H MOV BX,5000H MOV CX,AX MOV AX,BX MOV BX,CX CODE ENDS END START 方法二CODE SEGMENT ASSUME CS:CODE START: MOV AX,3000H MOV BX,5000H XCHG AX,BX CODE ENDS END START

方法三CODE SEGMENT ASSUME CS:CODE START: MOV AX,3000H MOV BX,5000H PUSH AX PUSH BX POP AX POP BX CODE ENDS END START 2、分别执行以下指令,比较寄存器寻址,寄存器间接寻址和相对寄存器寻址间的区别。 MOV AX,BX 寄存器寻址,将BX内容送AX MOV AX,[BX] 寄存器间接寻址,将DS:BX内存单元内容送AX MOV AX,10[BX] 寄存器相对寻址,将DS:BX+10内存单元内容送AX 在DEBUG调试模式,用A命令直接编辑相应指令并用T命令单步执行,执行后查询相应寄存器的值并用D命令查内存。 3、已知有如下程序段: MOV AX,1234H MOV CL,4 在以上程序段的基础上,分别执行以下指令: ROL AX,CL AX=2341H ROR AX,CL AX=4123H SHL AX,CL AX=2340H SHR AX,CL AX=0123H SAR AX,CL AX=0123H RCL AX,CL 带进位标志位的循环左移 RCR AX,CL 带进位标志的循环右移 4、设有以下部分程序段: TABLE DW 10H,20H,30H,40H,50H ENTRY DW 3 ┇ LEA BX,TABLE ADD BX,ENTRY MOV AX,[BX] ┇ 要求:(1)将以上程序段补充成为一个完整的汇编程序。

相关文档
最新文档