微机接口与通讯A&K

合集下载

《微机接口与应用》作业及答案

《微机接口与应用》作业及答案

《微机接口与应用(含汇编语言)》作业及答案一、单顶选择题1. 8086是( )A) 单片机 B) 单板机 C) 微处理器 D)微机系统2. 8086微处理器可寻址访问的最大I/O空间为( )A) 1K B) 64K C) 640K D) 1M3.集成度最高的存储线路是( )态线路。

A) 6管静态 B) 6管动态 C)4管动态 D)单管动态4.当8086/8088访问100H端口时,采用()寻址方式。

A) 直接 B) 立即 C) 寄存器间接 D) 相对5. 8086/8088的中断是向量中断,其中断服务程序的入口地址是由()提供。

A) 外设中断源 B) CPU的中断逻辑电路C) 以中断控制器读回中断类型号左移2位D) 由中断类型号指向的中断向量表中读出。

6.接口芯片是CPU与外设之间的界面,它与外设之间的联络信号是()。

A) RDY,STB B) RDY,INTC) STB,INT D) RDY,STB,INT7.对8253—5的定时与计数()。

A) 有两种不同的工作方式B) 定时只加时钟脉冲,不设计数值C) 实质相同 D) 从各自的控制端口设置8.单片机是( )A)微处理器 B)微型计算机 C) 微机系统 D)中央处理器9. 8086最小工作方式和最大工作方式的主要差别是()A)内存容量不同 B)I/O端口数不同C)数据总线位数不同 D)单处理器和多处理器的不同10. 8253—5某计数器的最大计数初值是()。

A) 65536 B) FF00H C) 0000H D) FFFFH11. 8253—5某计数器工作在方式1时,在计数中途OUTi为()A) 由低变高 B) 由高变低 C) 高电平 D) 低电平12.由8088微处理器组成的PC机的数据线是( )A)8条单向线 B)16条单向线C)8条双向线 D)16条双向线13.要组成64KB的8086系统程序存储空间,选用EPROM的最佳方案是( )芯片。

微机原理及接口技术试题及答案精选全文完整版

微机原理及接口技术试题及答案精选全文完整版

《微机原理及接口技术》试卷(A )适用专业(计算机科学与技术) 使用班级()一、选择题(每题 1 分,共 15 分) 1. 微机中控制总线传送的是 ( )。

A.存储器和I/O 接口的地址码B.微处理器向内存储器和I/O 的命令信号C.存储器和I/O 设备向微处理器传送的状态信号D.B 和C2. 8253可编程定时/计数器,在初始化时写入的最大计数初值是 ( )。

A.0000HB.7FFFHC.65535D.FFFFH3. 在异步串行通信中引入了"波特率因子"的概念,波特率因子为16,64时,接收时钟的频率为波特率的16,64倍,引入波特率因子的目的是 ( )。

A.识别正确的起始位 B.提高接收速度 C.提高采样精度 D.三者都是4. 8086 CPU 标志寄存器共有( )位,其中使用7位,未使用其它位均作为CPU 指令运行后的状态信息和控制标志信息。

A. 8 B. 10 C. 16 D. 205. 8086微处理器CLK 引脚输入时钟信号是由( )提供。

A.8284 B.8288C.8287 D.82896. 最基本的读操作包含4个状态,即T 1 、T 2、T 3和T 4 ,当存储器或 I/O 设备的速度慢于CPU 速度时,在( )状态之间插入1个或几个等待状态T W 。

A. T 3和T 4 B. T 1和T 2 C. T 2和T 3 D. T 1和T 37. 在计算机与外设之间数据的传送方式分为串行传送方式和( )传送方式两类。

A.并行传送方式 B. 同步传送方式 C. 异步传送方式 D. 串/并传送方式8. 8253的( )是软件触发选通方式。

A.方式OB.方式1C.方式2D.方式4 9.串行异步通信协议中一个字符正式发送前,先发送( )低电平有效。

A.两个起始位 B .3个起始位 C. 1.5个起始位 D .1个起始位 10.对8255A 的C 口执行按位置位/复位操作时,写入的端口地址是( )。

微机原理接口

微机原理接口

微机原理接口
微机原理接口是计算机系统中用于连接外部设备的接口,用于实现数据和控制信号的传递。

接口通常由硬件和软件组成,硬件部分包括物理接口和逻辑接口。

物理接口是指连接计算机与外部设备之间的电缆、插座、连接器等物理连接部分。

不同的外部设备需要的物理接口类型各不相同,常见的物理接口有USB接口、HDMI接口、VGA接口等。

物理接口的设计需要考虑带宽、传输速率、信号噪声等因素。

逻辑接口是指连接计算机与外部设备之间的软件接口,通过逻辑接口可以实现数据的读写、设备的控制等功能。

逻辑接口通常由驱动程序提供,驱动程序负责将计算机的指令转换为硬件操作,使计算机与外部设备进行有效的交互。

在计算机系统中,各个设备的接口需要进行标准化,以确保不同厂商生产的设备可以互相兼容。

例如,USB接口就是一种标准接口,使得不同品牌的计算机可以连接同一种类型的USB设备。

接口的设计需要考虑可靠性、易用性、扩展性等因素。

良好的接口设计能够提高系统的稳定性和性能,使得不同外部设备能够方便地连接到计算机系统中,为用户带来更好的使用体验。

微机原理与接口技术期末试题ABC三卷及答案

微机原理与接口技术期末试题ABC三卷及答案

《微机接口技术》课程试题A卷一、填空题(每空格1 分共 28 分)1.接口的基本功能是()和()。

2.数据输入/输出的三种方式是()、()和()。

3.在查询输入/输出方式下,外设必须至少有两个端口,一个是()端口,另一个是()端口。

4.总线传输方式通常有三种()、()和()。

5.在总线上完成一次数据传输一般要经历如下阶段()阶段、()阶段、()阶段、()阶段。

6.按总线在微机结构中所处的位置,总线可分为()总线、()总线、()总线、()总线。

7.8255A具有()工作方式:()选通、()选通和()。

8.串行通信方式分为()和()。

9.RS-232-C是()与()间的标准。

10.调制解调器是()和()的组合器件。

二、判断题(每小题3分共24)11.8086CPU 在读/写总线周期的 T3 状态结束对 READY 线采样,如果 READY 为低电平,则在 T3 与 T4 状态之间插入等待状态 TW。

()12.在 8253 的方式控制字中,有一项计数锁存操作,其作用是暂停计数器的计数。

()13.8250 的溢出错误指示 CPU 还未取走前一个数据,接收移位寄存器又将接收到的一个新数据送至输入缓冲器。

()14.在 8088 系统(最小组态)中,执行指令”MOV [2000H],AX”需 1 个总线周期。

()15.DMA 控制器 8237A 现行字节数寄存器的值减到 0 时,终止计数。

()16.8086/8088CPU 的复位后开始执行的第一条指令的地址为FFFFH。

()17.若各中断源的优先级是一样的,则可用自动循环优先级来实现。

()18.最小模式下 8086/8088 读总线操作时序和写总线操作时序中的 DT / R 信号波形基本相同。

()三、单项选择题:(每小题 3分,共 30 分)19.8086CPU工作在总线请求方式时,会让出()。

A.地址总线 B.数据总线C.地址和数据总线 D.地址、数据和控制总线20.8086CPU的I/O地址空间为()字节。

微机原理与接口技术AB卷试题与答案.概要

微机原理与接口技术AB卷试题与答案.概要

试卷A一、填空:(每空1分,共20分)1、设字长为八位,有x= -1,y=124,则有:[x+y]补=_________, [x-y];补=__________2、数制转换:247.86= H =______________BCD;3、在8086CPU中,由于BIU和EU分开,所以_____和_____ 可以重叠操作,提高了CPU的利用率;4、8086的中断向量表位于内存的_______区域,它可以容纳____个中断向量,每一个向量占____ 个字节;5、8086系统中,地址FFFF0H是___________________ 地址;6、8086CPU的MN/MX引脚的作用是____________________;7、8251芯片中设立了_____、_____ 和______三种出错标志;8、8086CPU中典型总线周期由____个时钟周期组成,其中T1期间,CPU输出______信息;如有必要时,可以在__________两个时钟周期之间插入1个或多个T W等待周期。

9、8259A共有___个可编程的寄存器,它们分别用于接受CPU送来的______命令字和________命令字。

一、二、简答题:(20分)1、什么是信号的调制与解调?为什么要进行调制和解调?试举出一种调制的方式。

(5分)2、已有AX=E896H,BX=3976H,若执行ADD BX,AX指令,则结果BX,AX,标志位CF,OF,ZF各为何值?(5分)3、有变量定义的伪指令如下:NUMS DW 18 DUP(4 DUP(5),23)VAR DB 'HOW ARE YOU !', 0DH, 0AH试问:NUMS、VAR变量各分配了多少存储字节?(5分)4、已有MOV AL,INF[BP+SI]与MOV AL,ES:INF[BP+SI]两条指令,试问:其源操作数采用何种寻址方式?是字或是字节操作?两条指令有何区别?(5分)二、三、读图 (10分)下图中,AB7~AB0为8086CPU低八位地址总线试问:1、8259A占用______个端口地址,分别为____________,其中ICW1的设置地址为_________________;2、8255A占用_____个端口地址,分别为__________________,其中控制寄存器的地址为_______。

微机原理及接口技术第一章概述

微机原理及接口技术第一章概述

三、微型计算机的分类
按处理器同时处理数据的位数或字长分:
8位机
按其结构分:
16位机
32位机
64位机
PC机、
单片微型机、 单板微型机
1.2
微型计算机组成
现代计算机结构仍然是在冯· 诺依曼提出 的计算机逻辑结构和存储程序概念基础上建 立起来的。
一、微型计算机的硬件结构
微型计算机由微处理器、存储器、输入/输 出接口构成,它们之间由系统总线连接。
地址总线 (AB)
只读存储器 ROM 随机存储器 RAM
I/O接口
I/O设备 数据总线 (DB) 控制总线 (CB)
CPU
1. 微处理器
整个微机的核心是微处理器(up, MPU),也 称CPU。它包含算术逻辑部件ALU、寄存器组 及控制部件。
ALU : 算术运算、逻辑运算
寄 存 器:存放操作数、中间结果、地址、标 志等信息 控制部件:整个机器控制中心,包括程序计 数器IP、指令寄存器IR、指令译 码器ID、控制信息产生电路。
外部设备

I/O接口电路
存储器 RAM ROM 总线
控制部件
算术逻辑部件
寄存器组
MPU
2. 存储器 微机的存储器分为:主存和辅存 主存(内存):用于存放当前正在运行的程序和正 待处理数据。(CPU内部cache,主 板上的内存, 造价高,速度快,存 储容量小) 辅存(外存):存放暂不运行的程序和输入处理的 数据,(主机箱内或主机箱外,造 价低,容量大,可长期保存,但 速度慢)
办公自动化
信息高速公路
仪器仪表
将传感器与计算机集 成于同一芯片上,智能
传感器不仅具有信号检
测、转换功能,同时还 具有记忆、存储、解析、 统计、处理及自诊断、 自校准、自适应等功能。

微型计算机原理与接口技术第7章

微型计算机原理与接口技术第7章

6位数码管接口电路
7FH
位 锁 存 器 ( 段 选 ) D7 D6 D5 D4 D3 D2 D1 D0 0 1 1 1 1 1 1 1 h g f e d c b a 8 D7-D0
CS (201H选中)
20H 位
D7-D0 锁 存 器 ( 位 选 )
D0 0 0 0 0 0 D 1
5
位 反 相 驱 动 器
DMA写传送: I/O端口信息 系统RAM某单元。 存储单元读 / 写传送: 在DMAC控制下, 实现系统 RAM RAM。 注意:在PC系列机中禁止RAM RAM传送。 4. DMA传送的过程
AB DB CB
HRQ DREQ
HOLD
总线保持请求
总线响应
DMA 请求 DMA 响应
注意: I/O 指令只能在端口和AL, AX, EAX之间 交换信息, 用DX间址, 但不能使用方括号, 即不能写成: IN AL, [DX]。
7.2 微机系统与外设交换信息的方式
微机系统与 I/O 端口的信息交换有四种方式: 无条件传送 中断方式 查询方式 DMA方式
采用何种方式与接口的硬件电路有直接关系
查询式输出接口示意图 数据 锁 数据总线 存 器 数据口选中 (8) 状态标志
Q D
输 出 设 备
IOW 地址译码器 地址总线
+5V
IOR
状态口选中
ACK
R
―0‖为空闲
接数据线D0位
查询式数据输出核心程序 设状态口地址=200H=数据口地址
TSCAN: MOV IN TEST JNZ MOV MOV OUT
HOLD
总线请求 总线响应
HRQ
DREQ

微机原理与接口技术课后习题有答案

微机原理与接口技术课后习题有答案

第一章解:五代,详细见书解:微型计算机:以大规模、超大规模集成电路为主要部件,以集成了计算机主要部件——控制器和运算器的微处理器为核心,所构造出的计算机系统 ;PC机:PCPersonal Computer机就是面向个人单独使用的一类微机 ;单片机:用于控制的微处理器芯片,内部除CPU外还集成了计算机的其他一些主要部件,如:ROM、RAM、定时器、并行接口、串行接口,有的芯片还集成了A/D、D/A转换电路等;数字信号处理器DSP:主要面向大流量数字信号的实时处理,在宿主系统中充当数据处理中心,在网络通信、多媒体应用等领域正得到越来越多的应用解:微机主要有存储器、I/O设备和I/O接口、CPU、系统总线、操作系统和应用软件组成,各部分功能如下:CPU:统一协调和控制系统中的各个部件系统总线:传送信息存储器:存放程序和数据I/O设备:实现微机的输入输出功能I/O接口:I/O设备与CPU的桥梁操作系统:管理系统所有的软硬件资源解:系统总线:传递信息的一组公用导线,CPU通过它们与存储器和I/O设备进行信息交换 ;好处:组态灵活、扩展方便三组信号线:数据总线、地址总线和控制总线 ;其使用特点是:在某一时刻,只能由一个总线主控设备来控制系统总线,只能有一个发送者向总线发送信号;但可以有多个设备从总线上同时获得信号;解:1用于数值计算、数据处理及信息管理方向;采用通用微机,要求有较快的工作速度、较高的运算精度、较大的内存容量和较完备的输入输出设备,为用户提供方便友好的操作界面和简便快捷的维护、扩充手段;2用于过程控制及嵌人应用方向;采用控制类微机,要求能抵抗各种干扰、适应现场的恶劣环境、确保长时间稳定地工作,要求其实时性要好、强调其体积要小、便携式应用强调其省电;解:解:I/O通道:位于CPU和设备控制器之间,其目的是承担一些原来由CPU处理的I/O任务,从而把CPU 从繁杂的I/O任务中解脱出来;由10根信号线组成A9-A0;解:BIOS:基本输入输出系统;主要功能:用来驱动和管理诸如键盘、显示器、打印机、磁盘、时钟、串行通信接口等基本的输入输出设备解:基本RAM区:640KB保留RAM区:128KB扩展ROM区:128KB基本ROM区:128KB解:1、数—用来直接表征量的大小,包括:定点数、浮点数;2、码—用来指代某个事物或事物的某种状态属性,包括:二进制、八进制、十进制、十六进制;区别:使用场合不同,详见P16.解:123解:原码反码补码+37 00100101/25H 00100101/25H 00100101/25H解:解:无符号数:70D补码有符号数:70DBCD码:46DASCII:F解:1、相加后若出现和大于9,则将和减去10后再向高位进12、若出现组间进位,则将低位加6解:详见课本16页;解:C3 40 20 00D:44Hd:64HCR:0DHLF:0AH0:30HSP:20HNUL:00H解:国标码:36 50H机内码:B6 B0H第3章解:1完整的汇编语言源程序由段组成2一个汇编语言源程序可以包含若干个代码段、数据段、附加段或堆栈段,段与段之间的顺序可随意排列3需独立运行的程序必须包含一个代码段,并指示程序执行的起始点,一个程序只有一个起始点4所有的可执行性语句必须位于某一个代码段内,说明性语句可根据需要位于任一段内5通常,程序还需要一个堆栈段开始位置:用标号指明返回DOS:利用DOS功能调用的4CH子功能来实现汇编停止:执行到一条END伪指令时,停止汇编解:段定位、段组合和段类型;解:stack segment stackdb 10240stack endsdata segmentstring db 'Hello,Assembly',0dH,0aH,‘$’data endscode segment 'code'assume cs:code,ds:data,ss:stackstart: mov dx,offset stringmov ah,9int 21hcode endsend start解:1. EXE程序程序可以有多个代码段和多个数据段,程序长度可以超过64KB通常生成EXE结构的可执行程序2. COM程序只有一个逻辑段,程序长度不超过64KB需要满足一定条件才能生成COM结构的可执行程序MASM 需要采用TINY模式解:符号定义伪指令有“等价EQU”和“等号=”:符号名 EQU 数值表达式符号名 EQU <字符串>符号名=数值表达式EQU用于数值等价时不能重复定义符号名,但“=”允许有重复赋值;例如:X= 7 ;等效于:X equ 7X= X+5 ;“X EQU X+5”是错误的解:1 al=67h2 ax=133h,dx=4h3 ax=0230h4 al=41h4 ax=7654h解:my1b db 'Personal Computer'my2b db 20my3b db 14hmy4b db 00010100bmy5w dw 20 dupmy6c = 100my7c = <'Personal Computer'>解:利用定位伪指令控制,如org,even,align解:包括逻辑地址和类型两种属性;解:;数据段org 100hvarw dw 1234h , 5678hvarb db 3 , 4buff dd 10 dupmess db 'Hello';代码段mov ax , offset varb + offset messmov ax , type buff + type mess + type vard mov ax , sizeof varw+ sizeof buff+ sizeof messmov ax , lengthof varw+ lengthof vard解:1 1000超过一个字节所能表达的最大整数2SI应为偶数3两个内存单元不能直接运算4应改为al+15条件转移指令后面应接标号,而不是变量解:mov ah,1 ;只允许输入小写字母int 21hsub al,20h ;转换为大写字母mov dl,almov ah,2int 21h ;显示解:mov bx,offset LEDtablemov al,lednumxlat解:mov ax, bufXcmp ax, bufYjae donemov ax, bufYdone: mov bufZ, ax解:.model small.stack.databufX dw -7signX db.code.startupcmp bufX,0 ;test bufX,80hjl next ;jnz nextmov signX,0jmp donenext: mov signX,-1done: .exit 0end解:mov dl,’2’mov ax,bufXcmp ax,bufYje next1dec dlnext1: cmp ax,bufZje next2dec dlnext2: mov ah,2int 21h解:;代码段mov al,numbermov bx,0 ;BX←记录为1的位数restart: cmp al,0 ;AL=0结束jz doneagain: shr al,1 ;最低位右移进入CFjc next ;为1,转移inc bx ;不为1,继续jmp againnext: push axpush bxshl bx,1 ;位数乘以2偏移地址要用2个字节单元jmp addrsbx ;间接转移:IP←table+BX;以下是各个处理程序段fun0: mov dl,'0'jmp dispfun1: mov dl,'1'jmp dispfun2: mov dl,'2'jmp dispfun3: mov dl,'3'jmp dispfun4: mov dl,'4'jmp dispfun5: mov dl,'5'jmp dispfun6: mov dl,'6'jmp dispfun7: mov dl,'7'jmp disp;disp: mov ah,2 ;显示一个字符int 21hpop bxpop axjmp restartdone: …编制程序完成12H、45H、0F3H、6AH、20H、0FEH、90H、0C8H、57H和34H等10个字节数据之和,并将结果存入字节变量SUM中不考虑溢出和进位;;.model small.stack.datab_data db 12h,45h,0f3h,6ah,20h,0feh,90h,0c8h,57h,34h ;原始数据num equ 10 ;数据个数sum db ;预留结果单元.code.startupxor si, si ;位移量清零xor al, al ;取第一个数mov cx, num ;累加次数again: add al, b_datasi ;累加inc si ;指向下一个数loop again ;如未完,继续累加mov sum, al ;完了,存结果.exit 0end求主存0040h:0开始的一个64KB物理段中共有多少个空格;.model small.codestart: mov ax,0040h ;送段地址mov ds, axmov si, 0 ;偏移地址mov cx, si ;计数循环次数xor ax, ax ;空格计数器清零again: cmp byte ptr si, 20h ;与空格的ASCII码比较jne next ;不是空格,转inc ax ;是空格,空格数加1next: inc si ;修改地址指针loop again ;cx=cx-1,如cx=0 退出循环.exit 0end start编写计算100个16位正整数之和的程序;如果和不超过16位字的范围65535,则保存其和到wordsum,如超过则显示‘overflow’;答:;数据段count equ 100parray dw count dup ;假设有100个数据wordsum dw 0msg db ‘overflow’,’$’;代码段mov cx,countmov ax,0mov bx,offset parrayagain: add ax,bxjnc nextmov dx,offset msgmov ah,9int 21h ;显示溢出信息jmp done ;然后,跳出循环体next: add bx,2loop againmov wordsum,axdone: …编程把—个16位无符号二进制数转换成为用8421BCD码表示的5位十进制数;转换算法可以是:用二进制数除以10000,商为“万位”,再用余数除以1000,得到“千位”;依次用余数除以l00、10和l,得到“百位”、“十位”和“个位”; ;.model small.stack 256.dataarray dw ;源字数据dbcd db 5 dup ;五位bcd结果,高对高低对低.code.startupmov dx, array ;取源数据余数mov bx, 10000 ;除数mov cx, 10 ;除数系数mov si, 4 ;目的数据高位位移量again: mov ax, dx ;中存放被除数mov dx, 0div bx ;除于bx,商ax,余数dxmov dbcdsi, al ;商<10,存结果push dx ;暂存余数mov ax, bx ;除数除于10mov dx,0div cx ;除于cx,商ax、余数0存在dxmov bx, ax ;bx是除数pop dxdec si ;目的数据位移量减1jnz againmov dbcd, dl ;存个位数 < 10.exit 0end解:1汇编语言中,子程序要用一对过程伪指令PROC和ENDP声明,格式如下:过程名PROC NEAR|FAR……;过程体过程名ENDP2保护用到的寄存器内容,以便子程序返回时进行相应的恢复;3改错:crazy procpish bxpush cxxor ax,axxor dx,dxagain:add a,bxadc dx,0inc bxinc bxloop againpop cxpop bx解不需调用HTOASC子程序:again: mov ah,1int 21hcmp al,1bh ;ESC的ASCII码是1bhje donemov dl,almov ah,2int 21h ;是大写字母则转换为小写字母jmp againdone: …解答:asctob procpush cxand dh,0fh ;先转换十位数shl dh,1 ;十位数乘以10采用移位指令mov ch,dhshl dh,1shl dh,1add dh,chand dl,0fh ;转换个位数add dh,dl ;十位数加个位数mov al,dh ;设置出口参数pop cxretasctob endp解:DIPASC proc ;入口参数:AL=要显示的一个16进制数push cxpush dxpush axmov cl,4 ;转换高位shr al,clcall HTOASCmov dl,al ;显示mov ah,2int 21hpop ax ;转换低位call HTOASCmov dl,al ;显示mov ah,2int 21hmov dl,’H’;显示一个字母“H”mov ah,2int 21hpop dxpop cxretDIPASC endpHTOASC proc ;将AL低4位表达的一位16进制数转换为ASCII码and al,0fhcmp al,9jbe htoasc1add al,37h ;是0AH~0FH,加37H转换为ASCII码ret ;子程序返回htoasc1: add al,30h ;是0~9,加30H转换为ASCII码ret ;子程序返回HTOASC endp解:lucase procpush bxmov bx,offset stringcmp al,0je case0cmp al,1jz case1cmp al,2jz case2jmp donecase0: cmp byte ptr bx,0je donecmp byte ptr bx,’A’jb next0cmp byte ptr bx,’Z’ja next0add byte ptr bx,20hnext0: inc bxjmp case0case1: cmp byte ptr bx,0je donecmp byte ptr bx,’a’jb next1cmp byte ptr bx,’z’ja next1sub byte ptr bx,20hnext1: inc bxjmp case1case2: cmp byte ptr bx,0je donecmp byte ptr bx,’A’jb next2cmp byte ptr bx,’Z’ja next20add byte ptr bx,20hjmp next2next20: cmp byte ptr bx,’a’jb next2cmp byte ptr bx,’z’ja next2sub byte ptr bx,20hnext2: inc bxjmp case2done: pop bxretlucase endp解:1用寄存器传递参数:最简单和常用的参数传递方法是通过寄存器,只要把参数存于约定的寄存器中就可以了由于通用寄存器个数有限,这种方法对少量数据可以直接传递数值,而对大量数据只能传递地址采用寄存器传递参数,注意带有出口参数的寄存器不能保护和恢复,带有入口参数的寄存器可以保护、也可以不保护,但最好能够保持一致2用共享变量传递参数子程序和主程序使用同一个变量名存取数据就是利用共享变量全局变量进行参数传递如果变量定义和使用不在同一个源程序中,需要利用PUBLIC、EXTREN声明如果主程序还要利用原来的变量值,则需要保护和恢复利用共享变量传递参数,子程序的通用性较差,但特别适合在多个程序段间、尤其在不同的程序模块间传递数据3用堆栈传递参数参数传递还可以通过堆栈这个临时存储区;主程序将入口参数压入堆栈,子程序从堆栈中取出参数;子程序将出口参数压入堆栈,主程序弹出堆栈取得它们采用堆栈传递参数是程式化的,它是编译程序处理参数传递、以及汇编语言与高级语言混合编程时的常规方法解:方法:主程序将入口参数压入堆栈,子程序从堆栈中取出参数;子程序将出口参数压入堆栈,主程序弹出堆栈取得它们注意:压栈与弹栈必须要一一对应;解:方法1:neg32 proc ;入口参数:=32位有符号数neg ax ;实现0-功能neg dxsbb dx,0 ;这条指令也可以用dec dx代替retneg32 endp ;出口参数:=32位有符号数的补码方法2:neg32 proc ;入口参数:=32位有符号数not ax ;实现求反加1not dxadd ax,1adc dx,0retneg32 endp ;出口参数:=32位有符号数的补码解:;数据段array db 12h,25h,0f0h,0a3h,3,68h,71h,0cah,0ffh,90h ;数组count equ $-array ;数组元素个数result db ;校验和;代码段mov bx,offset array ;BX←数组的偏移地址mov cx,count ;CX←数组的元素个数call checksum ;调用求和过程mov result,al ;处理出口参数mov ax,4c00hint 21h;计算字节校验和的通用过程;入口参数:DS:BX=数组的段地址:偏移地址,CX=元素个数;出口参数:AL=校验和;说明:除AX/BX/CX外,不影响其他寄存器checksum procxor al,al ;累加器清0sum: add al,bx ;求和inc bx ;指向下一个字节loop sumretchecksum endpend解:⑴.model small.stack.datawdata dw 34abh.code.startupmov ax,wdatacall dispa.exit 0;dispa procpush cxpush dxmov cl,4mov dl,ahshr dl,clcall dldispmov dl,ahand dl,0fhcall dldispmov dl,alshr dl,clcall dldispmov dl,aland dl,0fhcall dldisppop dxpop cxretdispa endp;dldisp procpush axor dl,30hcmp dl,39hjbe dldisp1add dl,7dldisp1: mov ah,2int 21hpop axretdldisp endpend⑵.model small.stack.datawdata dw 34abhwordtemp dw.code.startupmov ax,wdatamov wordtemp,axcall dispa.exit 0;dispa procpush cxpush dxmov cl,4mov dl,byte ptr wordtemp+1shr dl,clcall dldispmov dl,byte ptr wordtemp+1and dl,0fhcall dldispmov dl,byte ptr wordtempshr dl,clcall dldispmov dl,byte ptr wordtempand dl,0fhcall dldisppop dxpop cxretdispa endp;dldisp procpush axor dl,30hcmp dl,39hjbe dldisp1add dl,7dldisp1: mov ah,2int 21hpop axretdldisp endpend⑶.model small.stack.datawdata dw 34abh.code.startuppush wdatacall dispapop ax ;add sp,2.exit 0;dispa procpush bpmov bp,sppush axpush cxpush dxmov ax,bp+4mov cl,4mov dl,ahshr dl,clcall dldispmov dl,ahand dl,0fhcall dldispmov dl,alshr dl,clcall dldispmov dl,aland dl,0fhcall dldisppop dxpop cxpop axpop bpretdispa endp;dldisp procpush axor dl,30hcmp dl,39hjbe dldisp1add dl,7dldisp1: mov ah,2int 21hpop axretdldisp endpend解:如果利用共享变量传递函数,且变量定义和使用不在同一个源程序中,需要利用PUBLIC、EXTERN 声明;解:1宏定义由一对宏汇编伪指令MACRO和ENDM来完成,格式如下:宏名MACRO 形参表……;宏定义体ENDM宏定义之后就可以使用它,即宏调用:宏名实参表2宏调用的格式同一般指令一样:在使用宏指令的位置写下宏名,后跟实体参数;如果有多个参数,应按形参顺序填入实参,也用逗号分隔3宏展开:在汇编时,宏指令被汇编程序用对应的代码序列替代,这就是宏展开宏展开的具体过程是:当汇编程序扫描源程序遇到已有定义的宏调用时,即用相应的宏定义体完全替代源程序的宏指令,同时用位置匹配的实参对形参进行取代解:宏调用的参数通过形参、实参结合实现传递,简捷直观、灵活多变;宏汇编的一大特色是它的参数;宏定义时既可以无参数,也可以有一个或多个参数;宏调用时实参的形式也非常灵活,可以是常数、变量、存储单元、指令操作码或它们的一部分,也可以是表达式;只要宏展开后符合汇编语言的语法规则即可;解:宏:仅是源程序级的简化:宏调用在汇编时进行程序语句的展开,不需要返回;不减小目标程序,执行速度没有改变通过形参、实参结合实现参数传递,简捷直观、灵活多变子程序:还是目标程序级的简化:子程序调用在执行时由CALL指令转向、RET指令返回;形成的目标代码较短,执行速度减慢需要利用寄存器、存储单元或堆栈等传递参数选择:宏与子程序具有各自的特点,程序员应该根据具体问题选择使用那种方法;通常,当程序段较短或要求较快执行时,应选用宏;当程序段较长或为减小目标代码时,要选用子程序编写一个宏指令move doprnd,soprnd,它实现任意寻址方式的字量源操作数soprnd送到目的操作数doprnd,包括存储单元到存储单元的传送功能;答:move macro doprnd,soprndmov ax,soprndmov doprnd,axendm定义一个宏logical,用它代表4条逻辑运算指令:and/or/xor/test;注意需要利用3个形式参数,并给出一个宏调用以及对应宏展开的例子;答:logical macro lcode,dopd,sopdlcode dopd,sopdendm例如,如果使用“and ax,bx”指令,可以利用该宏定义,写出宏指令如下:logical and,ax,bx解:utol macrolocal nextcmp al,’A’;小于“A”不转换jb nextcmp al,’Z’;大于“A”不转换ja nextadd al,20h ;是大写字母则转换为小写字母next:endm定义一个宏movestr strn,dstr,sstr,它将strn个字符从一个字符区sstr传送到另一个字符区dstr解:假设它们都在数据段movestr macro strn,dstr,sstrmov cx,dsmov es,cxmov cx,strnmov di,offset dstrmov si,offset sstrcldrep movsb ;;重复传送ES:DI←DS:SIendm第五章解:主存的作用:保存正在使用的、处于活动状态的程序和数据;辅存的作用:长期保存程序文件和数据文件,在需要时将这些文件调入RAM内存并激活使用;cache的作用:提高对存储器的访问速度;虚拟存储:由容量较小的主存和容量较大的辅存构成,其目标是扩大程序员眼中的主存容量;区别:通过存储器访问指令用户可对主存进行随机访问;用户利用操作系统提供的用户命令和功能调用对辅存进行访问;在半导体存储器中,RAM指的是随机存取存储器 ,他可读可写,但断电后信息一般会丢失;而ROM指的是只读存储器 ,正常工作时只能从中读取信息,但断电后信息不会丢失 ;以EPROM芯片2764为例,其存储容量为8K×8位,共有 8 条数据线和 13 条地址线;用它组成64KB的ROM存储区共需 8 片2764芯片; 解:双译码方式使得地址译码器的输出线的数目大为减少,使得芯片设计得时候复杂度就低了;地址线A9~A4根数据线I/O4~I/O1片选CS读写WE解:假想的RAM有12根地址线、4根数据线片选端CS或CE:有效时,可以对该芯片进行读写操作,通过对系统高位地址线的译码来选中各个存储芯片输出OE:控制读操作;有效时,芯片内数据输出,该控制端对应系统的读控制线MEMRMRDC写WE:控制写操作;有效时,数据进入芯片中,该控制端对应系统的写控制线MEMWMWTC解:位片结构:每个存储单元具有一个唯一的地址,可存储1位;4116字片结构:每个存储单元具有一个唯一的地址,可存储多位;2114解:组成单元速度集成度应用SRAM 触发器快低小容量系统DRAM 极间电容慢高大容量系统NVRAM 带微型电池慢低小容量非易失掩膜ROM:信息制作在芯片中,不可更改PROM:允许一次编程,此后不可更改EPROM:用紫外光擦除,擦除后可编程;并允许用户多次擦除和编程EEPROME2PROM:采用加电方法在线进行擦除和编程,也可多次擦写Flash Memory闪存:能够快速擦写的EEPROM,但只能按块Block擦除解:位扩充——存储器芯片数据位数小于主机数据线数时,利用多个存储器芯片在数据“位”方向的扩充;地址扩充字扩充——当一个存储器芯片不能满足系统存储容量时,利用多个存储器芯片在“地址”方向的扩充组成32KB存储空间,用SRAM 21141K×4需要64个芯片;组成32KB存储空间,用DRAM 411616K×1需要16个芯片;它们都需要进行位扩充和地址扩充解:片选信号说明该存储器芯片是否被选中正常工作,设置它可以比较方便地实现多个存储器芯片组成大容量的存储空间存储器片选信号通常与CPU地址总线的高位地址线相关联,可以采用“全译码”、“部分译码”、“线选译码”方式采用全译码方式可以避免地址重复采用部分或线选译码可以节省译码硬件解:24=16解:解:解:解:解:动态随机存取存储器 DRAM 的存储单元电路动态存储单元是由 MOS 管的栅极电容 C 和门控管组成的;数据以电荷的形式存储在栅极电容上,电容上的电压高表示存储数据 1 ;电容没有储存电荷,电压为 0 ,表明存储数据 0 ;因存在漏电,使电容存储的信息不能长久保持,为防止信息丢失,就必须定时地给电容补充电荷,这种操作称为“ 刷新” 由于要不断地刷新,所以称为动态存储;方法:采用“仅行地址有效”方法刷新;刷新周期:15μs刷新次数:128解:4 256KB A19-A16 4解:访问的局部性原理:在一个较短的时间间隔内,由程序产生的地址往往集中在存储器逻辑地址空间的很小范围内;指令地址的分布本来就是连续的,再加上循环程序段和子程序段要重复执行多次;因此,对这些地址的访问就自然地具有时间上集中分布的倾向;数据分布的这种集中倾向不如指令明显,但对数组的存储和访问以及工作单元的选择都可以使存储器地址相对集中;这种对局部范围的存储器地址频繁访问,而对此范围以外的地址则访问甚少的现象,就称为程序访问的局部性;cache的作用:提高对存储器的访问速度;虚拟存储:其目标是扩大程序员眼中的主存容量;第七章解:总线:指可以由多个信息处理单元所共享的信息通道;使用特点:⑴在某一时刻,只能由一个主设备控制总线,其他主设备此时可作为从设备出现⑵在某一时刻,只能有一个设备向总线上发送数据,但可以有多个设备从总线上接收数据在各种微机总线中,根据总线连接对象的不同可将它们分为以下几类,它们是:片内总线、芯片总线、板级总线、设备总线和互连总线_;例如,ISA总线属于板级总线,USB总线属于设备总线,I2C总线属于芯片总线;总线中除电源和地线外的信号线,也可按传输信息的不同分为以下3类,即:数据总线、地址总线、控制总线 ;解:分时复用就是一个引脚在不同的时刻具有两个甚至多个作用总线复用的目的是为了减少对外引脚个数在访问存储器或外设的总线操作周期中,这些引脚在第一个时钟周期输出存储器或I/O端口的低8位地址A7 ~ A0,其他时间用于传送8位数据D7 ~ D0 解:并行总线:多维数据通过多根信号线同时进行传递;并行同步传输、并行异步传输见P174;解:见P174.解:总线的性能指标包括:总线宽度、标准传输、时钟同步/异步、总线复用、信号线数、总线控制方式总线宽度:它是指数据总线的根数, 用bit位表示,如8位、16位、32位、64位;解:D0~D7:8位双向数据总线A0~A19:20位输出地址总线ALE:地址锁存允许,每个CPU 总线周期有效IOR:I/O读,输出IOW:I/O写,输出IO CH RDY:I/O通道准备好,输入第九章解:软件延时、不可编程的硬件定时、可编程的硬件定时解:CLK时钟输入信号——在计数过程中,此引脚上每输入一个时钟信号下降沿,计数器的计数值减1GATE门控输入信号——控制计数器工作,可分成电平控制和上升沿控制两种类型OUT计数器输出信号——当一次计数过程结束计数值减为0,OUT引脚上将产生一个输出信号解:8253每个通道有 6 种工作方式可供选择;若设定某通道为方式0后,其输出引脚为低电平;当写入计数初值并进入减1计数器后通道开始计数, CLK 信号端每来一个脉冲减1计数器就减1;当计数器减为0 ,则输出引脚输出高电平,表示计数结束;8253的CLK0接的时钟,欲使OUT0产生频率为300KHz的方波信号,则8253的计数值应为 5=÷300KHz ,应选用的工作方式是 3解:1 mov al,50hmov dx,207hout dx,almov al,128 ;80hmov dx,205hout dx,al2 mov al,33hmov dx,207hout dx,almov ax,3000h ;不是3000mov dx,204hout dx,almov al,ahout dx,al3 mov al,0b4hmov dx,207hout dx,almov al,02f0hmov dx,206hout dx,almov al,ahout dx,al解:mov al,33hout 0fbh,al ;写入计数器0地址:0fbhmov al,80h ;out 0f8h,al ;写入低字节计数初值mov al,50hout 0f8h,al ;写入高字节计数初值作用:计数器0的计数初值为5080h解计数器0——每隔55ms产生一个IRQ0中断请求计数器1——每隔15μs产生一个DRAM刷新请求计数器2——控制扬声器音调解101个下降沿,还可以采用方式4GATE0接外部启动计数器的控制信号,可以选用方式1或方式5 mov dx,203hmov al,12h ;方式5为1ahout dx,almov dx,200hmov al,64hout dx,al解:计数器0的计数值:5M/1K=5000=1388H方式控制字:00100101=25H、2DH、35H、3DH十进制计数00100100=24H、2CH、34H、3CH二进制计数计数器1的计数值:1000方式控制字:01101001=69H、79H十进制计数 01101000=68H、78H二进制计数MOV DX,0FFF3HMOV AL,25H ;通道0,只写高字节,方式2,十进制OUT DX,ALMOV DX, 0FFF0HMOV AL,50H ;计数初值5000OUT DX,ALMOV DX,0FFF3HMOV AL,69H ;通道1,方式4OUT DX,ALMOV DX, 0FFF1HMOV AL,10H ;计数初值1000OUT DX,AL解:stack segment stackdw 1024 dupstack endsdata segmentfreq dw 8,,,,,,,,data endscode segment 'code'assume cs:code, ds:data,ss:stack start: mov ax,datamov ds,axagain:mov ah,01hin 21hcmp al,1BHjz nextcmp al,31Hjb next1cmp al,38Hja next1and al,0fhmov ah,00hmov si,axmov bx,offset freqmov ax,BX+SIcall speakercall speakonjmp againnext1: call speakoffjmp againnext: mov ax,4c00hint 21hspeaker procpush axmov al,0b6hout 43h,alpop axout 42h,almov al,ahout 42h,alretspeaker endp speakon procpush axin al,61hor al,03hout 61h,alpop axretspeakon endp speakoff procpush axin al,61hand al,0fchout 61h,alpop axretspeakoff endpcode endsend starts 解:1 f 1162f。

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

《微机接口与通讯》模拟试卷1
一、选择题(每题1分,共10分)
1. 在下列常用的I/O装置中,具有输入功能的是_ B ______。

A CRT
B 开关
C LE
D D 蜂鸣器
2. 在各类标准总线中,目前PC主机板使用最普遍的是___ D _____。

A ISA总线
B EISA总线
C VISA总线
D PCI总线
3. 一个8位CPU与一Intel8253定时计数器可编程芯片相连接。

按照常规连接方法,该8253的端口地址范围为80H-83H,当需要为8253的通道2分别写控制字和计数初值时,其端口地址依次为____ D _____。

A 80H、80H
B 82H、82H
C 83H、80H
D 83H、82H
4. A、B两点采用串行异步方式进行通信,A点发送的波特率为1200,B点串行接收器的波特率因子为16,则B点接收器的波特率应该为___ A ____。

A 1200
B 19200
C 75
D 不能确定
5. 在模拟接口中,_____ A _____能够将非电量的模拟量转换为电量。

A 传感器 C 运算放大器 C 采样保持电路 D A/D转换器
6. 一般而言,在以下各类周期中,每个周期的时间最短的是___ C _____。

A 指令周期
B 总线周期
C 时钟周期
D CPU周期
7. 当CPU采用程序查询方式与打印机连接时,CPU在向打印机发送打印字符前,必须先____ B ____。

A 读取打印机地址信息
B 读取打印机状态信息
C 向打印机发打印命令
D 向打印机发打印字符属性值
8. I/O端口的编址方式有二种:独立编址和存储器映像编址,其中,采用存储器映像编址的优点是____ C ____。

A 不浪费存储器地址空间
B I/O访问时间短
C I/O寻址方式丰富
D 程序可读性好
9. 与采用数字电路构成的硬件电路定时器相比,用软件定时的优点是___ A ____。

A 灵活性好
B 不占用CPU时间
C 电路安装方便
D 共享程度高
10. PC机是一台____ D ______。

A 单片机
B 单板机
C 微机
D 微机系统
二、填空题(每格2分,共10分)
通常计算机都是使用____传感器____来采集外部信息,由于___干扰信号_______,采集到的外部信息还需要经过滤波器处理。

因为计算机只能处理__数字量____,所以计算机需要使用A/D转换器将采集到的____模拟量____信息进行转换。

如果A/D转换器的位数越多,则____分辨率_____性能越好。

三、简答题(每题5分,共20分)
1. 试简要说明80386/80486等32位存储体组织特点。

80386/80486有32位地址线,直接输出A31-A2,低2位地址编码产生BE3-BE0,以选择不同字节。

BE3-BE0所选择的四个存储体分别对应32位数据线D31-D0的从高到低4字节。

2. 使用电话传输计算机的数据信号,需要使用MODEM,试简要说明MODEM的功能。

MODEM,也称调制解调器,通过数据信号与音频信号的转换,实现电话线数据通信。

其中,调制表示将数字信号转换为音频信号,解调表示将音频信号转换为数字信号。

3. 试说明DMA控制器内容主要结构。

地址寄存器、字节数计数器、控制寄存器。

4. 从80286起的CPU有两种工作方式,即实方式和保护方式。

对于80286CPU,试分别说明实方式和保护方式下的存储器寻址能力。

实地址方式,寻址能力1M,保护方式下,寻址能力16M。

四、(20分)针对一个微型计算机的存储器系统,CPU的地址线为20位,数据线为8位,采用静态RMA构成内存。

1. CPU的最大地址寻址范围为多少?(5分)1M,00000-FFFFFH
2. 构造128K*8,需在16K*8的存储器芯片多少片(5分)8片
3. 完成存储器和CPU的连接图。

(10分)略(要点,每个芯片与14根地址线相连,8根数据线相连,3-8译码区分8个芯片,地址线单向,数据线双向,读写控制等与所有芯片相连)
五、(20分)一个Intel 8253芯片和8位CPU相连接,端口地址为70H-73H,现有2.5MHz 的时钟信号用作8253的时钟输入,要求8253的OUT2的输出每隔0.1秒以后由低变为高电平。

1. 说明Intel 8253的工作模式及其计数初值。

(5分)
需要有二个通道连接共同完成,其中一个通道工作于方式2或方式3,通道2工作于方式0;二个通道的计数初值乘积为250000(十进制表示)
2. 画出Intel 8253与CPU连接以及其它连接的电路图。

(5分)
略(第一个通道的输出作为第二个通道的输入时钟)
3. 编写Intel 8253的初始化程序。

(10分)
略(in,out指令,控制端口地址73H,其他通道依次是70、71、72)
六、(20分)一个内部无锁存器的8位D/A转换器与8位CPU相连接,D/A转换器的输出电压范围是0V-5V。

1. 给出D/A转换器与CPU的连接图。

略(加锁存器)
2. 在理想情况下,CPU输出给D/A转换器的值增加1,D/A转换器的电压输出会发生怎样的变化?
输出电压值增0.0195V
3.如果现要求D/A转换器输出信号在电压值为2.5V和3.5V之间变化,应如何控制。

输出D/A的数字量范围为:128-179。

相关文档
最新文档