2018师范计算机与接口技术作业二

更新时间:2023-11-05 18:16:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

16201350272001 黄荣超 第7章 汇编语言程序设计

7.5运行程序写出结果:AH=_______ A=_____ CL=_______

MOV AL,35H MOV AH,0 MOV CL,4 SHL AX,CL SHR AL,CL

7.6 STRING1 DB ‘ABC’ STRING2 DB ‘DEFGHI’ …

MOV AH,01;从键盘输入一个1 ~ 9之间的字符 INT 21H

AND AL,0FH SUB AL,4 XOR AH,AH

MOV BX,OFFSET STRING2 ADD BX,AX MOV DL,[BX]

MOV AH,02H ;显示输出 INT 21H …

试回答:(1) 如从键盘输人字符‘3’,程序段有什么结果?

(2)如从键盘输人字符‘7’,程序段有什么结果? 答:1)显示‘C’

2)显示‘G’

7.7已知AX=1234H,BX=5678H,SP=2268H当下面的程序段执行完下列程序后,

AX= BX= SP= XCHG AX,BX PUSH AX PUSH BX POP AX POP BX

7.8编一程序程序段,功能是把数0 ~ 9(BCD码)转换为相应的ASCII码,存在ASCI数据区中。 BCDM DB 09H, 05H,06H, 02H,08H,0,03HF, 01H, 07H,04H CUNT=$—BCDM

ASCI DB CUNT DUP ( ? )

答:DATA SEGMENT

BCDM DB 09H,05H,06H,02H,08H,0,03HF,01H,07H,

04H CUNT=$-BCDM ASCI DB CUNT DUP ( ? ) DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA

MAIN PROC FAR

MOV AX,DATA MOV DS,AX LEA SI,BCDM LEA DI,ASCI MOV CX,CUNT LP:MOV AL,[SI] OR AL,

30H MOV [DI],AL INC SI INC DI LOOP LP

MOV AX,4C00H INT 21H MAIN ENDP CODE ENDS

END MAIN

7.9在STR单元开始定义了一长度为LEN字节的字符串,统计出其中大写字母的个数并存放到LARGE字节单元中。请编一完整的源程序。数据段如下:

DATA SEGMENT

STR DB ‘… …’ LEN EQU $- STR LARGE DB ? DATA ENDS

答:

CD EGMENT

ASSUME CS:CD,DS:DATA MAIN PROC FAR

MOV AX,DATA MOV DS,AX LEA SI,STR MOV CX,LEN MOV BL,0

NT: CMP BYTE PTR [SI],‘A’ JB NOLARG

CMP BYTE PTR [SI],‘Z’ JA NOLARG INC BL NOLARG:INC SI

LOOP NT

MOV LGE,BL MOV AH,4CH INT 21H MAIN ENDP CD ENDS

END MAIN

7.10 DATA SEGMENT

VAL DB 23,-2,39,63,-104,-85,16,71,08H,90 DATA ENDS … LEA SI,VAL MOV CX,9

MOV AL,[SI] LOP1:INC SI CMP AL,[SI]

JL LOP2

MOV AL,[SI] LOP2:LOOP LOP1 HLT

上述程序段运行后,AL= ,程序功能是 。

第8章 输入与输出接口

8.4 哪2个8255引脚完成内部I/O端口地址选择?

答:地址信号A1、A0用于I/O端口地址选择。通过A1、A0所组合的地址来区分8255A 内部A、

B、C三个数据端口和一个控制端口的地址。

8.7写出在选通输出操作期间将8255的PC5引脚置为逻辑1的程序(设8255的控制口的地址为083H)。

答:设8255的控制口的地址为083H,则将8255的PC5引脚置为逻辑1的程序片断如下:

MOV AL,BFH MOV DX,083H OUT DX,AL MOV AL,0FH OUT DX,AL

8.12什么是波特率?

答:波特率即传输率,就是在通信过程中每秒传输串型数据的位数。

8.14 如下图为LED接口电路,74LS373与LED之间是同相放大驱动电路。请完成:①如(b)图所示,LED的各笔划与D0-D7数据线连接,在表格中写出显示码;②若用地址A0-A7译码,使端口地址为78H,请把图中的74LS138译码器接入;③写一程序,程序运行时LED按如下方式不断循环显示1→2→3:

(注:每字显示时间500ms(毫秒)。设有现成的延时100ms的子程序D100MS可供调用,调用D100MS不会影响任何寄存器。)

LED显示 1 3 (二进制)显示码 LED显示 8 E (二进制)显示码

第9章 中断、计时/定时、DMA控制器

9.8 简述ICW和OCW的重要,怎样对8259A进行初始化?

答:8259A 是通过编程初始化命令字和操作命令字来选择定义各种工作方式的。初始化命令字ICW在8259A工作之前定义,它规定了8259A的基本操作。操作命令字OCW 在正常操作过程中定义,它控制8259A的操作。

系统上电以后,8259A必须写入ICW1、ICW2和ICW4,如果ICW1将8259A编程为级联方式,那么还必须编程ICW3。其中ICW1定义了8259A的基本操作;ICW2用来编程8259A中断请求的类型号;当系统工作于级联方式时,ICW3表示从片8259A连接到主片8259A的的哪一个中断请求线上;在基于8086~Pentium系列微处理器的系统当中,需要编程8259A的ICW4。

系统上电以后,8259A必须写入ICW1、ICW2和ICW4,如果ICW1将8259A编程为级联方式,那么还必须编程ICW3。其中ICW1定义了8259A的基本操作;ICW2用来编程8259A中断请求的类型号;当系统工作于级联方式时,ICW3表示从片8259A连接到主片8259A的的哪一个中断请求线上;在基于8086~Pentium系列微处理器的系统当中,需要编程8259A的ICW4。

9.9 什么是普通EOI,什么是特殊EOI,它们的作用是什么?

答:普通EOI是靠CPU在中断服务程序中向8259A发送的EOI命令,用来清除当前处于服务中优先级最高的ISR位的。普通结束中断方式用于全嵌套方式。

特殊EOI是通过CPU发送特殊的EOI命令,命令指出了要清除的是正在服务的哪一个ISR位。特

殊结束主要用于非全嵌套方式。

9.15 8237有哪几种数据传送方式?各种方式的特点是什么?

答:单字节传送、块传送、随机请求传送三种方式。单字节传送方式每次传送完一个字节,并释放总线至少一个总线周期。然后,继续测试外部设备的DMA请求,如果外设发出的DREQ有效,8237A循环上述过程,控制下一个字节的传送,直至传送字节计数器减为零。

块传送是DMA的一种典型传送方式,在8237A控制器获得总线权以后,控制数据一个字节、一个字节地传送,直至数据块传送完毕。

随机请求传送综合了块传送和单字节传送的特点。每传送完一个字节,8237A就测试DREQ的状态,如果DREQ为有效状态,则继续进行DMA传送,直至字节计数器为0。如果DREO为无效状态,8237A便释放总线,并继续测试DREQ的状态,只有在DREQ回到有效状态后,8237A才继续控制数据传送。

9.18如果8253某计数器的计数初值为400H,时钟频率为2MHz,求定时时间(微秒)。 答:定时时间T=400H÷2MHz=1024÷2MHz=512μs

9.20用8253作为某数据采集系统的定时器,每隔10ms用中断方式采集一次数据,已知输入时钟频率为10kHz,8259端口地址为20—21H,中断类型号为13H,8253端口地址为40~43H,请为8259和8253编制初始化程序。

答:8253选通道1以方式2定时,时间初值N=10KHz×10ms=100。8259由于中断类型号为13H,所以只能通过IR3,初始人为完全嵌套、边沿触发、非缓冲、非自动结束: ;8253初始化:

MOV AL,01110100B

OUT46H,AL

MOV AX,100

OUT42HAL

MOV AL,AH

OUT42H,AL

;8259初始化:

MOV AL,00010011B定;ICW1

OUT20H,AL

MOV AL,13H;ICW2

OUT22H,AL

MOV AL,01H;ICW4

OUT22H,AL

IN AL,22H;读原屏蔽字

AND AL,11111011B;允许IR3中断

OUT22H,AL

9.21已知串行接口8251A 数据口地址为40H,控制口地址为41H。请编写程序,通过8251A采用查询方式(检查TxRDY是否为1),把STR缓冲区中的字符串发送出去(数据段定义如下)。将8251A定义为异步传送方式,波特率因子为16,采用奇校验,1位停止位,8位数据位。

MOV AL,01H;ICW4

OUT22H,AL

IN AL,22H;读原屏蔽字

AND AL,11111011B;允许IR3中断

OUT22H,AL

9.21已知串行接口8251A 数据口地址为40H,控制口地址为41H。请编写程序,通过8251A采用查询方式(检查TxRDY是否为1),把STR缓冲区中的字符串发送出去(数据段定义如下)。将8251A定义为异步传送方式,波特率因子为16,采用奇校验,1位停止位,8位数据位。

本文来源:https://www.bwwdw.com/article/byr2.html

Top