内存block起存有32个双字节带符号数,试将其中的正数保持不变,js负数转正数求补后

:转载时请以超链接形式标明文章原始出处和作者信息及本声明
在片外2000H开始的单元OUTLOOK怎么存储位置中有100个有符号数,试编程统计其中正数、负数、零的个数。
貌似 以前是单片机里面的题目 很简单。。。 但是现在不记得了。。
MOV R0,#60H
MOVX @R0,30H
MOV DPTR,#60H
MOVX A,@DPTR
MOV DPTR,#2000H
MOVX @DPTR,A
历史上的今天:君,已阅读到文档的结尾了呢~~
微机原理作业分组及题目
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
微机原理作业分组及题目
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口微型计算机基础课后答案
第一章 微型计算机基础
题1-1 计算机发展至今,经历了哪几代?
答:电子管计算机、晶体管计算机、集成电路计算机、超大规模集成电路计算机、非冯诺伊
曼计算机和神经计算机。
题 1-2 微机系统由哪几部分组成?微处理器、微机、微机系统的关系是什么?
答:1、微机系统分硬件和软件,硬件包括CPU、存储器、输入输出设备和输入输出接口,
软件包括系统软件和应用软件。
2、微处理器是指微机的核心芯片CPU;微处理器、存储器和输入输出设备组成微机;
微机、外部设备和计算机软件组成微机系统。
题 1-3 微机的分类方法包括哪几种?各用在什么应用领域中?
答:按微处理器的位数,可分为1 位、4 位、8 位、32 位和64 位机等。
按功能和机构可分为单片机和多片机。
按组装方式可分为单板机和多板机。
单片机在工业过程控制、智能化仪器仪表和家用电器中得到了广泛的应用。
单板机可用于过程控制、各种仪器仪表、机器的单机控制、数据处理等。
题 1-4 微处理器有哪几部分组成?各部分的功能是什么?
答:微处理器包括运算器、控制器和寄存器三个主要部分。
运算器的功能是完成数据的算术和逻辑运算;控制器的功能是根据指令的要求,对微型
计算机各部分发出相应的控制信息,使它们协调工作,从而完成对整个系统的控制;寄存器
用来存放经常使用的数据。
题 1-5 微处理器的发展经历了哪几代?Pentium 系列微处理器采用了哪些先进
答:第一代4 位或低档8 位微处理器、第二代中高档8 位微处理器、第三代16 位微处理器、
第四代32 位微处理器、第五代64 位微处理器、第六代64 位高档微处理器。
Pentium 系列微处理器采用了多项先进的技术,如:RISC 技术、超级流水线技术、超
标量结构技术、MMX 技术、动态分支预测技术、超顺序执行技术、双独立总线DIB 技术、
一级高速缓冲存储器采用双cache 结构、二级高速缓冲存储器达256KB 或512KB、支持多
微处理器等。
题 1-6 何为微处理器的系统总线?有几种?功能是什么?
答: 系统总线是传送信息的公共导线,微型计算机各部分之间是用系统总线连接的。
一般有三组总线:地址总线、数据总线和控制总线。
地址总线 AB 就是传送CPU 发出的地址信息,是单向总线。
数据总线 DB 传送数据信息,是双向总线,CPU 既可通过DB 从内存或输入设备接口电
路读入数据,又可通过DB 将CPU 内部数据送至内存或输出设备接口电路。
控制总线 CB 传送控制信息,其中有的是CPU 向内存及外设发出的信息,有的是外设
等发给CPU 的信息。
题 1-7 何为引脚的分时复用?如何从8088 的地址、数据复用引脚准确的得到
地址和数据信息?
答:引脚的分时复用是指一个引脚在不同时刻传送不同的信息,比如:在一个总线周期里既
传送地址又传送数据。
可以利用 ALE 和DEN 信号来获得复用的地址信号和数据信号:
ALE 为地址锁存允许信号,高电平有效时,把地址-数据线上出现的地址信号锁存到地
址锁存器中;DEN 为数据允许信号,低电平有效时该信号允许数据输入或输出。
第一章 微型计算机基础
在总线的 T1 状态,输出地址信息。ALE 输出一个正脉冲,它的下降沿把地址信息打入
锁存器中;当DEN 变为低电平时,说明引脚上出现数据信息。
题 1-8 标志寄存器的功能及各种标志的含义是什么?进位标志和溢出标志的区
别是什么?
答:标志寄存器记录了算术和逻辑结果的一些特征。如CF 进位标志位、PF 奇偶标志位、
AF 辅助进位位、ZF 零标志位、SF 符号标志位、OF 溢出标志位、TF 跟踪标志位、IF 中断
标志位、DF 方向标志位。
CF:当进行加法或减法运算时,若最高位发生进位或借位则CF=1,否则CF=0。
OF:当算术运算的结果超出了带符号数的范围,即溢出时,OF=1,否则OF=0。
题 1-9 查表得出下列字符的ASCII 码:回车、换行、空格、$、/、*、9、A、B、
C、D、E、F、a、b。
答:回车(0DH)、换行(0AH)、空格(20H)、$(24H)、/(2FH)、*(2AH)、9(39H)、A(41H)、B(42H)、
C(43H)、D(44H)、E(45H)、F(46H)、a(61H)、b(62H)。
题 1-10 何为定点数、浮点数?何为无符号数、有符号数?
答:计算机中数的小数点位置固定的表示法称为定点表示法,用定点表示法表示的数称为定
点数;计算机中数的小数点位置不固定的表示法称为浮点表示法,用浮点表示法表示的数称
为浮点数。
无符号数用全部位表示数的大小;有符号数用二进制数的最高位表示数的符号,其余的
位表示数的大小。
题 1-11 写出下列数表示的无符号数的范围
(1)8 位二进制数 (2)16 位二进制数
答:(1)8 位无符号数:0~255;8 位有符号数:-128~127;
(2)16 位无符号数:0~65535;16 位有符号数:-;
题 1-12 用8 位和16 位二进制数,写出下列数的原码、反码、补码。
(1)+1(2)-1(3)+45(4)—45(5)+127(6)-127
答:(1)00 01
00 00 00 01
(2)11 11
00 11 11 11
(3)10 01
10 00 00 01
(4)01 11
10 11 11 11
(5)11 11
11 00 00 11
(6)00 01
11 11 11 01
注意:-128 用8 位数只有补码没有原码和反码,8 位原码:-127~127,8 位反码:-127~127,8
位补码:-128~127。
题1-13 微机某内存单元的内容为C5H,若它表示的是一个无符号数,写出该数
在下列各进制中的表达式。
(1)二进制(2)八进制(3)BCD 码(4)十进制
答:(1)(2)305(3)01 7
题1-14 微机某内存单元的内容为C5H,若它表示的是一个有符号数,则该数对
应的十进制数是什么?
第一章 微型计算机基础
题1-15 求A95BH 与 8CA2H 之和;并写出运算后标志寄存器中的SF、ZF、CF、OF
答:和为35FD; SF=0; ZF=0; CF=1; OF=1 。
第二章微型计算机指令系统
第二章 微型计算机指令系统
题 2-1 试分别说明以下各指令的源操作数属于何种寻址方式。
答:1、MOV AX ,[SP] ——寄存器间接寻址
2、MOV DS ,AX ——寄存器寻址
3、MOV DI ,0FF00H ——立即数寻址
4、MOV BX ,[2100H] ——直接寻址
5、MOV CX ,[SI+5] ——变址寻址
6、MOV AX ,TABLE[BP][DI] ——基址加变址寻址
7、MOV DX ,COUNT[BX] ——基址寻址
题2-2 已知有关寄存器中的内容为,(DS)=0F100H ,(SS)=0A100H ,(SI)
=1000H, ( DI ) =2000H ,( BX ) =3000H , ( BP ) =4000H 。偏移量
TABLE=0AH ,COUNT=0BH 。说明题2-1 中第1 小题和第4~7 小题指令源操作数
的物理地址。
答:1、物理地址=SS&16+SP=0AH=A5000H
4、物理地址=DS&16+2100H=F3100H
5、物理地址=DS&16+SI+5H=FH+5H=F2005H
6、EA=BP+DI+TABLE=600AH
物理地址=DS&16+EA=FAH=F700AH
7、EA=BX+COUNT=300BH
物理地址=DS&16+EA=FBH=F400BH
题2-3 某一个存储单元的段地址为ABCDH,偏移地址为ABCDH,试说明其物理地
址是什么;而另一个存储单元的物理地址为F1000H,偏移地址为FFF0H,试说明
其段地址是什么。
答:ABCD0H+ABCDH=B689DH——物理地址
F1000H-FFF0H=E1010H ,所以段地址为:E101H。
题2-4 分别采用三种不同寻址方式的指令将偏移地址为5000H 的存储单元的一
个字传送到6000H 单元,要求源操作数和目标操作数分别采用以下寻址方式:
1、直接寻址
2、寄存器间接寻址
3、变址寻址
答:1、 MOV AX,[5000H]
MOV [6000H],AX
2、 MOV SI,5000H
MOV DI,6000H
MOV BX,[SI]
MOV [DI],BX
3、 MOV AX,[SI+5000H]
MOV [SI+6000H],AX
题2-5 说明以下 指令是否正确,如果不正确,简述理由。
第二章微型计算机指令系统
1、MOV AL,SI
2、MOV [1001H],[1000H]
3、MOV DS ,2000H
4、MOV CS ,AX
5、PUSH 5000H
7、IN AX ,1234H
8、XCHG BX ,0F000H
答:1、错。源数据和目标数据类型不匹配。
2、错。不能用一条MOV 指令完成两个存储单元的数据传送。
3、错。不能直接向DS 中送立即数。
4、错。CX 寄存器不能作为目的操作数。
5、错。数据类型不符合语法。
6、错。POP 指令以字为操作数。
7、错。端口地址8 位,超出范围。
8、错。源数据类型错误。
题2-6 阅读以下程序段,说明其运行结果:
1、 MOV DX ,0F100H
MOV DH ,[DX]
MOV AH ,[DX]
初值: (F100H)=‘A’, (4100H)=‘B’
结果: (AH)= 41H
2、 MOV SI ,2100H
MOV [2800H] ,SI
MOV SP ,2800H
结果: (DI)= 2100H , (SP)= 2802H 。
3、 MOV SI ,2000H
MOV DI ,3000H
MOV SP ,0FF00H
XCHG SI ,DI
MOV AL ,[SI]
MOV BL ,[DI]
初值: (2000H)=‘1’, (3000H)=‘a’
结果: (SI)= 3000H , (DI)= 2000H ,
(AL)= 61H , (BL)= 31H ,
(SP)= FF00H 。
题2-7 试用 指令编写程序段,分别实现以下要求:
第二章微型计算机指令系统
1、将 AL 和BL 寄存器的内容互换
2、将1000H 和1001H 内存单元中的字互换
3、将2000H 和2100H 内存单元中的字互换
4、将BL,CL 和DL 三个寄存器的内容互换,即BL CL DL
答:1、 XCHG AL ,BL
2、 MOV BL ,[1000H]
MOV AL ,[1001H]
XCHG AL ,BL
3、 MOV BX,[2000H]
MOV AX,[2100H]
XCHG AX,BX
4、 XCHG BL ,CL
XCHG CL ,DL
XCHG DL ,BL
题2-8 将首地址为3000H 的100 个存储单元的内容传送到首地址为3100H 的内
存区,要求分别使用以下指令:
1、一般传送指令MOV
2、串操作指令MOVS,但不加重复前缀REP
3、加重复前缀的串操作指令REP MOVS
答: 1、 MOV SI ,3000H
MOV DI ,3100H
MOV CX ,100
CIRCLE: MOV AL ,[SI]
MOV [DI] ,AL
LOOP CIRCLE
2、 MOV SI ,3000H
MOV DI ,3100H
MOV CX ,100
CIRCLE: MOVSB
LOOP CIRCLE
3、 MOV SI ,3000H
MOV DI ,3100H
MOV CX ,100
题2-9 说明以下 指令是否正确,如果不正确,简述理由
1、ADD BL , F100H
2、SUB ES , 20H
3、AND 0FH, AL
4、CMP [SI], [DI]
第二章微型计算机指令系统
5、INC 2000H
6、MUL BL , CL
7、DIV 08H
8、SAL AX ,5
1、错。源操作数和目标操作数的数据类型不匹配。
2、错。段寄存器不能参加算术运算。
3、错。源操作数和目标操作数位置颠倒。
4、错。不能同时为存储器。
5、错。操作数类型错误。
6、错。其中一个操作数是隐含的。
7、错。必须是寄存器或存储器操作数。
8、错。超过1 的循环次数要通过赋值CL 来完成。
题2-10 已知寄存器AL 和BL 的内容分别如下,试分析执行ADD AL , BL 指令后,
寄存器AL 以及标志位CF,ZF,SF,AF,OF 和PF 的内容。
1、(AL)=45H ,(BL)=31H
2、(AL)=7AH ,(BL)=56H
3、(AL)=F2H ,(BL)=8DH
4、(AL)=B1H ,(BL)=F8H
5、(AL)=37H ,(BL)=C9H
题号 AL CF ZF SF AF OF PF
1、 76H 0 0 0 0 0 0
2、 D0H 0 0 1 1 1 0
3、 7FH 1 0 0 0 1 0
4、 A9H 1 0 1 0 1 1
5、 00H 1 1 0 1 0 1
(注:考虑CF 时要当操作数为无符号数,考虑OF 时要当操作数为有符号数,下同)
题2-11 已知寄存器AL 和BL 的内容分别如下,试分析执行SUB AL , BL 指令以
后,寄存器AL 以及标志位CF,ZF,SF,AF,OF 和PF 的内容。
1、(AL)= 96H , (BL)= 42H
2、(AL)= 27H , (BL)= 38H
3、(AL)= 6CH , (BL)= A1H
4、(AL)= B4H , (BL)= E7H
5、(AL)= 1DH , (BL)= E5H
题号 AL CF ZF SF AF OF PF
1、 54H 0 0 0 0 1 0
2、 EFH 1 0 1 1 0 0
3、 CBH 1 0 1 0 1 0
4、 CDH 1 0 1 1 0 0
5、 38H 1 0 0 0 0 0
第二章微型计算机指令系统
题 2-12 阅读以下程序段:
MOV SI ,4000H
MOV DI ,4100H
MOV AL ,[SI]
ADD AL ,[DI]
MOV [DI] ,AL
MOV AL ,[SI+1]
MOV AL ,[DI+1]
MOV [DI+1] ,AL
1、根据给定的初值,说明运行结果。
初值: (4000H)=63H , (4001H)=54H
(4100H)=88H , (4101H)=29H
结果: (4100H)= 51H , (4101H)= 84H 。
2、在以上程序段中,当执行ADD AL , [DI]指令,但尚未执行DAA 指令时,
有关寄存器和标志位的内容为:
(AL)= EBH ,(CF)= 0 , (ZF)= 0 , (SF)= 1 ,
(AF)= 0 ,(OF)= 0 , (PF)= 1 。
3、在以上程序段中,当第一个执行DAA 指令后,有关寄存器和标志位的内
(AL)= 51H ,(CF)= 1 , (ZF)= 0 , (SF)= 0 ,
(AF)= 1 ,(OF)= 0 , (PF)= 0 。
4、如果在以上程序段中去掉两条DAA 指令,但初值不变,则运行结果为:
(4100H)= EBH , (4101H)= 7DH 。
题2-13 阅读以下程序段:
START: LEA BX ,TABLE
MOV CL ,[BX]
LOOPER: INC BX
MOV AL ,[BX]
CMP AL ,0AH
ADD AL ,30H
X1: ADD AL ,37H
NEXT: MOV [BX] ,AL
JNZ LOOPER
1、假设从地址TABLE 开始,10 个存储单元的内容依次为:05H,01H,
09H,0CH,00H,0FH,03H,0BH,08H,0AH
依次写出运行以上程序段以后,从地址TABLE 开始的10 个存储单元的内容。
2、简单扼要说明以上程序段的功能。
第二章微型计算机指令系统
2、此程序段的功能是将这些存储单元的数据(十六进制)转化为相应的ASCII 码。
题2-14 用一条或几条 指令实现以下要求:
1、将AL 寄存器清零,但进位标志CF 不变。
2、将AL 寄存器和进位标志CF 同时清零。
3、将进位标志位清零,但AL 寄存器内容不变。
4、将AL 寄存器中内容的第0,2,4,6 位取反,其余位不变。
5、将AL 寄存器中内容的高4 位清零,低4 位保留。
6、将AL 寄存器中的带符号数(以补码形式存放)取绝对值后存入CL 寄存
7、统计AX 寄存器的内容中‘1’的个数,将统计结果存入CL 寄存器。
8、两个不压缩的BCD 码分别存放在3000H 和3001H 单元的低4 位,高4 位
均为零。试将两个不压缩的BCD 码组合成为一个压缩的BCD 码,前者放在低4
位,后者放在高4 位,存放到3002H 单元。例如:
初值位: (3000H)=07H, (3001H)=05H
要求结果为:(3002H)=57H
9、将4000H 和4001H 单元中的两个ASCII 码分别转化成相应的十六进制数,
然后共同存放到4002H 单元,前者放在低4 位,后者放在高4 位。例如:
初值位: (4000H)=42H=‘B’, (4001H)=36H=‘6’
要求结果为:(4002H)=6BH
10、将BL 寄存器中的无符号数乘128,高位放在BH 寄存器,低位放在BL
寄存器,要求执行速度尽量快。
11、将CL 寄存器中的带符号数乘16,高位放在CH 寄存器,低位放在CL 寄
存器,要求执行速度尽量快。
12、一个4 位十进制数以压缩BCD 码的形式存放在偏移地址为DATA 和DATA
+1 的内存单元中,DATA 单元存放个位和十位,DATA+1 单元存放百位和千位。
要求将其转换为相应的ASCII 码,存放到以BUFF 为首地址的4 个内存单元。例
初值为: (DATA)=47H , (DATA+1)=92H
要求结果为:(BUFF)=‘7’ , (BUFF+1)=‘4’
(BUFF+2)=‘2’ , (BUFF+3)=‘9’
答:1、 MOV AL, 0
2、 XOR AL, AL
3、 AND AL, AL
第二章微型计算机指令系统
4、 XOR AL, 55H
5、 AND AL, 0FH
6、 TEST AL, 80H ;判断是否为负数
JNZ NEXT ;如果是负数则跳转NEXT
MOV BL, AL
NEXT: NEG AL ;负数求补,即绝对值
MOV BL, AL
7、 XOR BL, BL
MOV CL, 0FH ;循环次数
Circle: SHL AX, 1 ;左移一位,首位移进CF,ROL 也可以实现
JC NEXT1 ;判断CF 是否为1
NEXT1: INC BL
NEXT2: LOOP Circle
MOV CL, BL
8、 MOV BL, [3000H]
MOV AL, [3001H]
MOV CL, 04H
SHL AL, CL
ADD AL, BL
MOV [3002H], AL
9、 XOR AX, AX
XOR BX, BX
MOV AL, [4001H]
MOV BL, [4000H]
CMP AL, 39H
SUB AL, 30H
X1: CMP BL, 39H
SUB BL, 30H
X2: MOV CL, 04H
SHL AL, CL
ADD AL, BL
MOV [4002H], AL
MOV AH, 4CH
L1: SUB AL, 37H
L2: SUB BL, 37H
10、 XOR AX, AX
XOR BH, BH
MOV CL, 07H
第二章微型计算机指令系统
SHL BX, CL
11、 XOR AX, AX
XOR CH, CH
MOV AX, CX
MOV CL, 04H
SHL AX, CL
MOV CX, AX
12、 LEA SI, DATA
LEA DI, BUFF
MOV CL, 02H
LOAD: MOV AL, [SI]
MOV BL, AL
AND AL, 0FH
ADD AL, 30H
MOV [DI], AL
MOV AL, BL
MOV CL, 04H
ROR AL, CL
AND AL, 0FH
ADD AL, 30H
MOV [DI], AL
题2-15 假设AL 寄存器的内容为FEH,BL 寄存器的内容为04H,试问:
1、执行MUL BL 指令后,AX 寄存器的内容是什么?标志位OFC 和CF 的值
2、执行IMUL BL 指令后,AX 寄存器的内容是什么?标志位OFC 和CF 的值
答:1、AX=3F8H ;CF=OF=1
2、AX=FFF8H ;CF=OF=0
题2-16 假设AX 寄存器的内容为0101H,BL 寄存器的内容为0AH,试问执行DIV
BL 指令后,AL 寄存器的内容是什么?AH 寄存器的内容是什么?
答:AL=19H ; AH=07H
题2-17 假设AX 寄存器的内容为FFF5H,BL 寄存器的内容为FEH,试问执行IDIV
BL 指令后,AL 寄存器的内容是什么?AH 寄存器的内容是什么?
答:AL=05H ; AH=0FFH
题2-18 已知被减数和减数均为包括6 个字节的十六进制数,分别存在首地址为
第二章微型计算机指令系统
DATA1 和DATA2 的内存区,低位在前,高位在后。试用 指令编写减法
的程序段,要求相减以后得到的结果存放在首地址为DATA3 的内存区。
答: MOV CX, 6
LOOPER: MOV AL, DATA1[SI]
SBB AL, DATA2[SI]
MOV DATA3[SI], AL
LOOP LOOPER
题2-19 如果题2-18 中的被减数和减数均为包括包括6 个字节的压缩BCD 码(相
当于12 位十进制数),试重新编写减法的程序段。
答: MOV CX, 6
LOOPER: MOV AL, DATA1[SI]
SBB AL, DATA2[SI]
MOV DATA3[SI], AL
LOOP LOOPER
题2-20 有一个数据块中存放了若干8 位无符号数,数据块的长度存放在BLOCK
单元,数据块本身从BLOCK+1 单元开始存放,编写程序段找出数据块中最大的
无符号数,存放到MAX 单元。
答: XOR CX, CX
MOV CX, [BLOCK]
LEA SI, BLOCK+1
MOV AL, [SI]
P1: INC SI
CMP AL, [SI]
MOV AL, [SI]
P2: DEC CX
LEA SI, MAX
MOV [SI], AL
题2-21 以BUFFER 为首地址的内存区存放了100 个16 位带符号数,编写程序段
比较它们的大小,找出其中最小的带符号数,存进MIN 和MIN+1 单元。
答: LEA SI, BUFFER
第二章微型计算机指令系统
MOV CX, 100
MOV MIN, AX
NEXT: LODSW
CMP AX, MIN
LESS: MOV MIN, AX
GOON: LOOP NEXT
题2-22 两个字符串的长度均为100,首地址分别为STRING1 和STRING2,比较
两个字符串是否完全相同,如果相同,将BL 寄存器置为00H;如果不完全相同,
将BL 寄存器置为FFH,并将第一个字符串中的第一个不相同字符的地址放在SI
答: LEA SI, STRING1
LEA DI, STRING2
MOV CX, 100
REPE CMPSB
JCXZ MATCH
MOV BL, FFH
MATCH: MOV BL, OOH
题2-23 一个数据块的首地址为DATA,结束符为‘$’,编写程序段统计数据块中
分别等于正值、负值和零的数据个数,分别存入PLUS、MINUS 和ZERO 单元。
答: XOR AL, AL
MOV PLUS, AL
MOV MINUS, AL
MOV ZERO, AL
LEA SI, DATA
CHECK: LODSB
CMP AL, 24H ;“$”的ASCII 码是24H
X1: INC MINUS
X2: INC ZERO
第二章微型计算机指令系统
X3: INC PLUS
END: … ;后续处理程序
第三章汇编程序设计
第三章 汇编程序设计
题 3-1 分别说明以下各个变量占有多少内存单元,以及各内存单元的内容(用
十六进制表示)。
1、DATA DB 1,2,3,4,'1234',-5,-128,0FFH,'0FFH'
2、EXP DB 51+4*6
3、NUM DW 0,60,40/2-'A'
4、DWORD DD 12,-3,0ABCDH,3*7+15
5、ALPHA DB '?'
6、BETA DW ?,?
7、TABLE DB 5DUP(4DUP(9),3DUP(8),6,0)
8、BUFF DW 10DUP(2,-2,6DUP(?))
个内存单元。内容分别为:01H,02H,03H,04H,31H,32H,33H,34H,FBH,80H,FFH,
30H,46H,46H,48H。
2、1 个内存单元。内容分别为:4BH。
3、10 个内存单元。内容分别为:00H,00H,FFH,FFH,30H,32H,64H,00H,D3H,FFH。
4、16 个内存单元。内容分别为:0CH,00H,00H,00H,FDH,
FFH,FFH,FFH,CDH,ABH,00H,
00H,24H,00H,00H,00H。
5、1 个内存单元。内容分别为:3FH。
6、4 个内存单元。内容分别为:没有赋予特定的内容。
7、45 个内存单元。为5 组重复的内容,每组9 个,内容分别为:09H,09H,09H,
09H,08H,08H,08H,06H,00H。
8、160 个内存单元。为10 组重复的内容,每组16 个,内容分别为:02H,00H,FEH,FFH,
然后有12 个没有赋予特定内容的单元。
题 3-2 假设有以下的符号定义伪操作:
DATA1 EQU 19H
DATA2 EQU -1
DATA3 EQU 'A'
如果随后分别执行以下指令,试说明有关寄存器的内容(用十六进制表示)。
1、MOV AL,DATA1*DATA2+DATA3
2、MOV BL,DATA1/DATA2-DATA3
3、MOV CL,DATA3 MOD DATA2
4、MOV DL,DATA1 AND DATA3
5、MOV AH,DATA1 OR DATA2 XOR DATA3
6、MOV AX,DATA1 LE DATA2
7、MOV BX,DATA3 GT DATA1
答:1、(AL)=28H
2、(BL)=A6H
3、(CL)=0FH
4、(DL)=01H
5、(AH)=BEH
6、(AX)=0000H
7、(BX)=FFFFH
第三章汇编程序设计
题 3-3 假设有以下数据定义伪操作:
BUFF1 DB 'WXYZ'
BUFF2 DB 10 DUP(?)
BUFF3 DW 50 DUP(?)
BUFF4 DD 100 DUP(?)
如果随后分别执行以下指令,试说明有关寄存器的内容。
1、MOV SI,BUFF1
2、MOV DI,OFFSET BUFF1
3、MOV AL,TYPE BUFF2
4、MOV AH,TYPE BUFF3
5、MOV BL,LENGTH BUFF2
6、MOV BH,LENGTH BUFF3
7、MOV CL,SIZE BUFF2
8、MOV CH,SIZE BUFF3
9、MOV DL,TYPE BUFF4
10、MOV DH,SIZE BUFF4
答:1、(SI)='XW'
2、(DI)为变量BUFF1 的偏移地址
5、(BL)=10
6、(BH)=50
7、(CL)=10
8、(CH)=100
10、(DH)=400
题 3-4 编写程序段从键盘接受一个字符,如为‘Y’,跳转到标号YES;如为‘N’,
跳转到标号‘NO’。如果键入的字符既不是‘Y’,也不是‘N’,则等待重新键入。
要求对键入的大写字母和小写字母同样处理。
答: MAIN: … ...
KEY: MOV AH,1
CMP AL,'Y'
CMP AL,'y'
CMP AL,'N'
CMP AL,'n'
第三章汇编程序设计
题 3-5 试编写完整的汇编语言程序,实现两个5 位十进制数的加法。例如计算
要求被加数和加数均以ASCII 码表示,相加所得的和也以ASCII 码表示。同
时应考虑两个5 位十进制数相加时,所得的和可能有6 位。
答: COUNT EQU 05H
DATA SEGMENT
FIRST DB '12784'
SECOND DB '59306'
SUM DB 6 DUP(?)
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,ES:DATA
START: MOV AX,DATA
MOV SI,OFFSET FIRST
MOV DI,OFFSET SUM
MOV BX,OFFSET SECOND
MOV CX,COUNT
ADDASC: LODS FIRST
MOV AH,[BX]
ADC AL,[BX]
LOOP ADDASC
MOV AL,30H
MOV SI,OFFSET SUM
MOV DI,OFFSET SUM
MOV CX,COUNT
GETASC: LODS SUM
LOOP GETASC
MOV AH,4CH
第三章汇编程序设计
题 3-6 试编写完整的汇编语言程序,实现两个以下乘法运算,被乘数5 位十进
制数,乘数为1 位十进制数,例如计算
30816*6=?
被乘数和乘数均以ASCII 码形式存放。要求乘积也以ASCII 码形式存放。
答: COUNT EQU 05H
DATA SEGMENT
DATA1 DB '61803'
DATA2 DB '6'
RESULT DB 6 DUP(0)
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,ES:DATA
START: MOV AX,DATA
MOV SI,OFFSET DATA1
MOV DI,OFFSET RESULT
MOV BL,DATA2
AND BL,0FH
MOV CX,COUNT
MULBCD: LODS DATA1
SUB AL,30H
ADD AX,[DI]
MOV [DI],AX
LOOP MULBCD
MOV CX,COUNT+1
MOV SI,OFFSET RESULT
MOV DI,OFFSET RESULT
GETASC: LODS RESULT
LOOP GETASC
MOV AH,4CH
题 3-7 首地址为STRING 的内存存放了一个由数字‘0’~‘9’,英文大写字母
‘A’~‘Z’以及英文小写字母‘a’~‘z’组成的ASCII 字符串,字符串的结
第三章汇编程序设计
束符为 CR(即回车符,其ASCII 码为0DH),字符串总长度不超过256 个。要求
编写完整的汇编语言程序,将字符串传送到首地址为BUFFER 的另一内存区,遇
到结束符CR 即停止传送,并要求统计传送的字符总数以及其中的英文大写字母
的数目,分别存入SUM 单元和CAPITAL 单元。
答: DATA SEGMENT
SUM DB 00H
CAPITAL DB 00H
STRING DB '12ABCDas',0DH
BUFFER DB 256 DUP(0)
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,ES:DATA
START: MOV AX,DATA
MOV SI,OFFSET STRING
MOV DI,OFFSET BUFFER
SECH: LODS STRING
CMP AL,0DH
CMP AL,41H
CMP AL,5AH
INC CAPITAL
DONE: MOV AH,4CH
注:SUM 中包含回车符。
题 3-8 程序中多次要求将某两个8 位寄存器或内存单元中的无符号数相乘,并
将得到的乘积放在某个16 位寄存器或存储单元中,要求:
1、定义一个宏指令。
2、假设进行以下两次宏调用,写出宏调用和宏扩展的结果。
(1)将BL 和CL 寄存器的内容相乘,乘积放在DX 寄存器。
(2)将CH 寄存器和DATA 存储单元的内容相乘,乘积放在存储单元BUFFER
和BUFFER+1。
答:1、MULTIPY MACRO OPR1,OPR2,RESULT
第三章汇编程序设计
MOV AL,OPR1
MOV RESULT,AX
2、(1) MULTIPY BL,CL,DX
+ MOV AL,BL
+ MOV DX,AX
(2) MULTIPY BH,DATA,BUFFER
+ MOV AL,BH
+ MUL DATA
+ MOV BUFFER,AX
第四章 半导体存储器
第四章 半导体存储器
题4-1 从下列各小题得四个选项中选出一个正确的,将编号填入相应的括号内:
1、以下存储器,其中( ② )是EPROM 只读存储器。
&# &# &# &#
2、在某台计算机内部,以下存储器中,( ④ )是计算机的内存。
①CD-ROM &# 寸软磁盘
③使用EPROM 的电子盘 &# 引脚的32MB 存储条
3、2764 是8KB 的EPROM,其地址线和数据线分别是( ③ )根。
&# &# &# &#
4、2164 芯片是64KB 的动态存储器,其地址线和数据线分别为( ④ )
根(注意:同一位数据线输入和输出是分开的,算作一根数据线)。
&# &# &# &#
5、以下存储器中,( ③ )需要刷新。
&# &# &# &#
6、指出以下存储器中,( ① )需要通过紫外线擦除器擦除。
&# &# &# &#
7、某72 个引脚的内存条,其数据线引脚为32 根,内存条上的动态存储器
为2M&36 共4 片,故计算机内存总容量为( ① )MB,且具有奇偶
①32 ②16 ③64 ④8
8、某168 个引脚的内存条,其数据线引脚为64 根,内存条上的动态存储器
为4M&64 共8 片,故计算机内存总容量为( ② )MB,不具有奇偶校验
&# &# ③64 ④32
9、用DEBUG 的D0;03FF 命令查看的内存,其容量为( ③ )。
&# &# &# &#
题4-2 将正确内容填入括号:
1、DRAM 需要刷新的原因是因为DRAM 靠(电容)存储电荷,如果不刷新,会
因为漏电而失去存储的信息。
2、存储器是指地址范围为0~9FFFFH 的(640)KB 的内存。
3、模式下的存储器地址范围是(00000)~(FFFFF)H 的1MB 内存。
4、EPROM 存储器靠(紫外线)照射,可擦除原有内容,使每个单元内容为(FF)
5、电子盘是用大容量存储器,按磁盘格式组成的外存储器,如果用Disk on
Chip(Flash ROM)芯片,其容量最大为(288)MB。
6、2816 或2864 是(EEPROM)类型的只读存储器,它可用于系统参数的在线
第四章 半导体存储器
7、存储器片选引脚,国际上都设计为(288)电平有效。
8、动态存储器的片选信号为(RAS)和(CAS)。
9、IBM-PC 的存储器读控制信号为(MEMR),写控制信号(MEMW)。
10、常用的EPROM 型号对应的容量是:
2732 ( 4 ) KB
2764 ( 8 ) KB
27128 ( 16 ) KB
27256 ( 32 ) KB
27512 ( 64 ) KB
27C040 ( 512 ) KB
题4-3 主存储器,内存保留区的含义;常规内存,扩展内存,高位内存的含义
答:不管是8088 还是286 以上的微机,为了保持兼容性,仍然把物理地址范围在00000H~
9FFFFH 的640KB 内存成为主存储器,而把A0000H~FFFFFH 的384KB 内存叫内存保留区,留
给视频适配器和ROM-BIOS 使用。地址在100000H 以上的存储器称为扩展存储器,也叫XMS。
以80286 为例(书上P255),在内存保留区内,地址0A0000~0BFFFFH 是显示缓冲区。
从0C0000H~0FFFFFH 共256MB 是系统的ROM 区,前128KB 供I/O 通道中扩展到ROM 用,最
后的64KB(0F0000~0FFFFFH)是系统板上的基本ROM 区,存放BIOS 等程序。
从100000H~FDFFFFH 共14.872MB 用于支持多用户系统,这部分内存是由用户插入扩展
卡后增大存储空间的。
最后的128KB(FE0000~FFFFFFH)是被用来复制0E0000~0FFFFFH 空间的机器代码的。
题4-4 Windows 98 应用程序可以访问多少内存空间?Windows 2000 与Windows
XP 应用程序又可以访问多少内存空间?
答:(书上P268)Windows 应用程序最多可以访问32 位的线性内存空间,从0H~FFFFFFFFH
共4GB。操作系统对内存按页管理,每页长1000H,这样内存就有100000H 页。
因采用不同的Windows 操作系统,其应用程序可访问的内存空间从2GB 不等。其中,
Windows 98 的应用程序可以占用整个4GB 内存空间,而Windows 2000 和Windows XP 的应
用程序只占用0~7FFFFFFFH 这2GB 内存空间。
第四章 半导体存储器
题4-5 双口RAM 有什么用途?它的特点是什么?
答:双端口RAM 用于高速共享数据缓冲器系统中;
特点是:两个端口都可以独立读/写的静态存储器,实际上它是作为双CPU 系统的公共
全局存储器来使用的,例如可用于多机系统通信缓冲器,DSP 系统和高速磁盘控制器等。
题4-6 串行EEPROM 有什么优点?
答:EEPROM 的典型优点是非挥发性、可字节擦除、编程速度快(一般小于10ms)。对EEPROM
编程无需将EEPROM 从系统中移出,从而使存储和刷新数据(或编程)非常方便、有效、可
行。EEPROM 还使得通过无线电或导线进行远距离编程成为可能,消除了 EPROM 的紫外光擦
除窗口,封装成本低,而且测试简单。串行EEPROM 的优点是管脚少、使用方便。
题4-7 闪存有什么用途?其特点是什么?
答:闪速存储器(Flash Memory)是一类非易失性存储器,即使在电源关闭后仍能保持片内
信息;与EPROM 相比较,闪存具有明显的优势,即在系统中电可擦除和可重复编程,而不需
要特殊的高电压;与EEPROM 相比较,闪存具有成本低,密度大的特点。其独特的性能使其
广泛运用于各个领域,包括嵌入式系统,如PC 及外设,电信交换机,蜂窝电话,网络互联
设备,仪器仪表和汽车器件,同时还包括新兴的语音,图像,数据存储类产品,如数码相机,
数字录音机和个人数字处理(PDA)。
题4-8 在题图4-8 中,8031CPU 外部扩展EPROM,有1 片27128 和1 片2764,
其P2,7 引脚相当于A15,请说明这两片存储器的地址范围(包括地址重叠区)。
第四章 半导体存储器
答:27128 的地址范围为0~3FFFH,地址重叠区为4000H~7FFFH;
2764 的地址范围为8000H ~ 9FFFH, 地址重叠区为A000H ~ BFFFH,C000H ~
DFFFH,E000H~FFFFH。
题4-9 在题图4-9 中,利用74LS138 同时扩展1 片EPROM 2764 和1 片SRAM 6264,
请分析这两片存储器的地址范围。
答:2764 的地址范围是0~1FFFH,6264 的地址范围是8000H~9FFFH,没有地址重叠区。
题4-10 在教材图4.33 中,改用74LS138 译码器代替74LS30,画出连线图,仍
第四章 半导体存储器
然使用 SRAM 6116A 的地址范围为A0000H~A07FFH。
题4-11 在教材4.34 中,将A19 经过非门连接G1,请分析这时Y0~Y7 对应的存
储器地址范围。
题4-12 在题图4-12 中,说明所连接的存储器SRAM 62256 的地址范围。
答:62256 为32KB 的SRAM,片内需要15 根地址线,因为74LS138 采用Y7 译码输出端,故
62256 的地址范围为38000H~3FFFFH。
第五章数字量输入输出
第五章 数字量输入输出
题 5-1 什么叫I/O 端口?典型的I/O 接口包括哪几类I/O 端口?
答:对于可编程的通用接口芯片,其内部往往有多个可寻址读写的寄存器,称之为端口。端
口有宽度,一般以字节为单位来组织。端口有自己的地址(端口地址),CPU 用地址对每个
端口进行读写操作。主机和外设之间的信息交换都是通过操作接口电路的I/O 端口来实现
根据端口接收和输出的信息不同,可将端口分为三类:数据端口、状态端口和控制端口。
题 5-2 计算机I/O 端口编址有几种不同方式?简述各自的主要优缺点。
答:在微型计算机系统中常用两种I/O 编址方式:存储器映像编址和I/O 端口单独编址。
存储器映像编址的优点是:无须专用的I/O 指令及专用的I/O 控制信号也能完成;且由
于CPU 对存储器数据的处理指令非常丰富,现可全部用于I/O 操作,使I/O 的功能更加灵
I/O 单独编址的优点是:I/O 端口分别编址,各自都有完整的地址空间;因为I/O 地址一
般都小于存储器地址,所以I/O 指令可以比存储器访问指令更短小,执行起来更快;而且专
用的I/O 指令在程序清单中,使I/O 操作非常明晰。
题 5-3 用简洁的语言叙述直接存储器访问(DMA)方式的本质特征。
答:外部设备不经过CPU 直接对存储器进行访问的一种数据传送模式。利用系统总线,由
外设直接对存储器进行读出或写入,以最大限度提高存储器与外部设备之间的数据传输率。
题 5-4 在CPU 执行指令过程中,4 个系统总线控制信号MEMR、
MEMW、IOR 和IOW 在一个总线周期内可能一个以上有效吗?在DMA 传送过程
中又有可能吗?请说明原因。
答:在CPU 执行指令过程中不会,在DMA 传送过程中会。
在 CPU 控制的一个总线周期内,MEMR、MEMW、IOR 和IOW4 个信号都需要地址总
线指定一个I/O 端口或一个存储器单元来进行读或写操作,因此它们中只能一个有效。而
DMA 传送在一个总线周期内要完成读写两种操作。
题 5-5 PC/XT 主板上的I/O 地址译码电路如题图5-5 所示。根据此图回答下列
1、控制信号AEN 的名称是什么?AEN 在此起什么作用?
2、若用户自己开发的接口选用I/O 地址为400H 会产生什么问题?
3、说明信号IOW 在此处的作用
第五章数字量输入输出
答:1、AEN 在此限制地址译码电路只在CPU 执行指令时起作用(不会在DMA 传送时,
错将存储器地址当成I/O 地址译码)
2、译码电路是不完全译码,有地址重叠,400H 地址是本译码电路Y0 输出端的重叠区。
3、IOW 在此限制译码输出端选中只写端口。
题 5-6 80X86 系统输入/输出接口如题图5-6 所示。Y230H 是I/O 地址译码输出
信号。当系统总线上的I/O 地址为230H 时,译码输出有效的低电平。IOR、IOW
是低电平有效的控制总线信号,DB0 是系统数据总线的最低位。现CPU 连续执
行了下列指令:
MOV DX,230H
1、执行上面的OUT 指令时,图中IOR 和IOW 哪个有效?DB0=?
2、请具体分析全部指令执行后,AL 的最低位D0=?
第五章数字量输入输出
答: 1、IOW 信号有效,DB0=1。
2、最后AL 的D0=0。
题 5-7 80X86CPU 在中断发生时首先要获得中断类型号,有几种获得中断类型
号的方法?请分别举例说明。
答:1、从中断管理电路获得,如INTR 引起的外部中断,在第二个中断响应周期中,中断
管理电路将中断源的类型号送到数据总线上共CPU 读取。
2、由CPU 内部获得,如NMI 中断被响应时,CPU 自动产生类型号为2 的中断,转入
相应的服务程序。
题 5-8 若当前CPU 正在对某一外部中断请求IRQm 服务,而外部又有两个外部
中断信号IRQn 和IRQi 同时有效,试说明的请求马上得到响应的条件是什么
(0&=(m、n、i)&=7)?
答:1、CPU 当前开中断;
2、IRQi 的优先级同时大于IRQn 和IRQm。
题 5-9 PC/XT 从00020H 开始的一段内存地址及其内容对应如下所列(十六进
地址(H):20,21,22,23,24,25,26,27,28,29,2A,2B
内容(H):3C,00,86,0E,45,00,88,0E,26,00,8E,0E
1、外部可屏蔽中断IRQ2 的中断矢(向)量地址是多少?
2、IRQ2 的中断服务程序入口地址是多少,用物理地址回答。
答:1、IRQ2 的中断类型号为0AH, 矢量地址为28H。
2、中断服务程序的入口地址为0E8EH:H。
题 5-10 80X86CPU 每一次中断响应发出两个响应信号INTA 各起什么作用?
答:第一个INTA 信号表示中断请求已被响应;第二个INTA 信号通知中断控制逻辑将中断
第五章数字量输入输出
类型号发送到数据线上,同时清除中断请求。
题 5-11 若用户要使用系统的IRQ7,其中断服务程序的入口地址为H,
如何安装中断矢量(不包括保护原矢量)。
答: PUSH DS
MOV AX,2000H
MOV DX,100H
MOV AH,25H
MOV AL,0FH
题5-12 可编程计数/定时电路8253 的控制字可以设定一种‘数值锁存操作’。这
种操作又何必要?
答:读计数器的当前值时,先读低字节、后读高字节。由于计数器并未停止计数,有可能在
先后读高低字节的两条指令之间,计数器的值已发生变化。为避免这种错误,在读数前先对
计数器写一个D5D4=00 的控制字,把计数器的当前值锁存到16 位的输出锁存器中。此后计
数器照常计数,但锁存器的值不跟着变。待CPU 将锁存器中的两字节都先后读完,锁存器
的内容自动又随计数器变化。
题 5-13 可编程计数器8253 的级连是何意思,什么时候会用到级连?
答:级连(又称为串联)是指一个计数器的输出作为另一个计数器的输入。
当计时间隔大于大于单通道最大的计时间隔时,常常用 8253 的级联提高计时间隔。
题 5-14 8253 的片选信号如题图5-14 连接。
1、列出8253 内各计数器及控制字的一组地址。
2、现有1MHz 方波,欲利用这片8253 产生1KHz 方波。请简单说明如何实
现(说明利用的计数器、工作方式及计数初值),并写出对8253 编程的有关内容。
答:1、计数器0 的地址为3B0H,计数器1 的地址为3B1H,计数器2 的地址为3B2H,控
制字寄存器的地址为3B3H。
2、对1MHz 方波分频即可产生1KHz 方波,选择计数器0,工作在方式3,计数初值为
MOV DX,3B3H
第五章数字量输入输出
MOV DX,3B0H
MOV AX,1000
题5-15 举例说明计算机异步串行通信中奇偶校验的原理。
答:奇偶校验位将每个传送字符中为‘1’的位数凑成奇数个或偶数个,供接受方进行奇偶
比如:采用奇校验,数据为B,数据中‘1’的个数为4 个,则奇偶校验位的值
题 5-16 从下列各小题中选择正确答案:
1、8255 在RESET 复位以后:
(1)A、B、C 三个端口全置成输出方式。
(2)三个端口全置成输入方式。
(3)三个端口方式不定,待用方式控制字设定。
2、初始化编程时,欲将8255A 口设置成方式1 输入、B 口设置成方式0 输
(1)应对A、B、C 三个端口各写一个字节的控制字。
(2)对A 组、B 组各写一个字节的控制字。
(3)三个端口合写一个控制字。
答:1、(2)2、(3)
题 5-17 现有一片8255A 如题图5-17 连接,设其在系统中所分配的I/O 地址为
200H~203H,开关K0~K3 闭合,其余开路,执行完下列程序之后,请指出:
1、A 口和B 口各工作于什么方式?各是输入还是输出?
2、指出各个发光二极管LED 的发光状态?
MOV AL,99H
MOV DX,203H
MOV DX,200H
XOR AL,0FH
MOV DX,201H
第五章数字量输入输出
答:1、A 口方式0 输入,B 口方式0 输出。
2、各个发光二极管LED 全灭。
题 5-18 从下列各小题中选择正确答案:
在 DMA 传送中,地址总线上出现的是:
(1)被访问的一个存储器单元的地址。
(2)被访问的一个I/O 端口的地址。
(3)分时出现被访问的存储器单元和I/O 端口的地址。
第六章模拟量输入输出
第六章 模拟量输入输出
题 6-1 模拟量输入通道通常由哪几部分组成?各部分在数据采集系统中起什么
答:典型的模拟量输入通道由以下五部分组成:传感器、信号处理环节、多路转换开关、采
样保持器和A/D 转换器。
传感器:能够把生产过程的非电物理量转换成电量,有些研究部门和生产厂家已研究生
产出各种变送器,将传感器输出的微弱电信号或电阻值等非电量转换成统一电流信号或电压
信号处理环节:一方面,将传感器输出的信号放大或处理成与 A/D 转换器所要求的输
入相适应的电压水平。另一方面,传感器与现场信号相连接,处于恶劣工作环境,其输出叠
加有干扰信号,因此信号处理用于去除干扰信号。
多路转换开关:要监测或控制的模拟量往往不只一个,为了节约投资,可以用多路模拟
开关,使多个模拟信号公用一个A/D 转换器进行采样和转换。
采样保持器:在 A/D 进行转换期间,保持采样输入信号的大小不变。
A/D 转换器:将模拟输入量转换成数字量,以便由计算机读取,进行分析处理。
题 6-2 模拟量的输出通道通常由哪几部分组成?各部分的作用如何?
答:典型的模拟量输出通道由以下三部分组成:锁存器、D/A 转换器、放大驱动。
锁存器:计算机输出的数据在总线上稳定的时间很短,用锁存器保持数字量的稳定。
D/A 转换器:把计算机输出的数字量转换成模拟量。
放大驱动:提高驱动能力,用于驱动外设。
题 6-3 D/A 转换器的转换精度是指什么?若有一片10 位DAC 芯片,其最大输
入电压为5V,它能分辨出的最小输出电压是多少?
答:精度表明 D/A 转换的精确程度。它可分为绝对精度和相对精度。
绝对精度是指对应于给定的满刻度数字量,D/A 实际输出与理论值之间的误差。该误差
是由于D/A 的增益误差、零点误差和噪声等引起的。
相对精度是指在满刻度已校准的情况下,在整个刻度范围内对应于任一数码的模拟量输
出与理论值之差。
能分辨出的最小输出电压为 5/ mv。
题 6-4 已知DAC 0832 芯片的最大输出电压为5V,
1、若其最小位变化一个二进制数位,对应的电压变化是多少?
2、若已知输入的数据为0B5H,试计算其输出电压应为多少?
答:1、DAC 0832 芯片为8 位D/A 转换器,则分辨率为8 位,最小位变化一个二进制数位,
对应的电压变化为5/255=19.61 mv。
2、输入的数据为0B5H=181,其输出电压为5*181/255=3.549 v。
题 6-5 画出DAC 0832 与8088 双缓冲方式的接口逻辑框图(端口地址为220H 和
221H),并写出产生锯齿波的程序。
第六章模拟量输入输出
2、程序如下所写:
MOV DX,220H
MOV AL,0FFH
CALL DELAY
CALL DELAY ;调延时子程序
DELAY: MOV CX,DATA ;设时间常数
LOOP DELAY
题 6-6 DAC 0832 与8 位CPU 接口的连接逻辑图如题图6-6 所示,试判断DAC
0832 工作在何种方式?如果想要在示波器上显示锯齿波,请编写有关程序。
第六章模拟量输入输出
答:1、DAC 0832 工作在单缓冲工作方式。
2、程序如下所写:
MOV DX,PORTA ;设置端口地址
MOV AL,0FFH ;设初值
OUT DX,AL ;往DAC 0832 端口输入数据
CALL DELAY ;调延时子程序
DELAY: MOV CX,DATA ;设时间常数
LOOP DELAY
题 6-7 关于DAC1210 芯片的工作原理,请回答以下问题:
1、为什么DAC1210 芯片内部有两级输入寄存器?这3 组寄存器起什么作
2、为什么第一级输入寄存器要分为8 位和4 位两组,而它们的选通信号又
都用同一个LE1?把它们设计成一组12 位的输入寄存器可以么?有何优缺点?
3、请设计一个DAC1210 与8088 CPU 接口的连接示意图(采用双缓冲方式)。
4、请设计一个DAC1210 与12 位CPU 接口的连接示意图(采用单缓冲方式)。
答:1、(1)为了和8 位微处理器机接口,一个12 位的数据要分两次写入,那么D/A 转
换器就有一个中间值,这是不允许的。为了消除中间值,必须使D/A 转换器的所有输入位
同时接受信息。第二级的存在消除了中间值。
(2)先把低8 位数字量送入8 位暂存的锁存器,由于4 位和8 位的锁存器的地址
相同,因此第二次送高4 位数字量时,同时选通低8 位的锁存器,从而12 位的数字量同时
送给12 位D/A 转换器。
2、(1)第一级输入寄存器要分为8 位和4 位两组是为了和8 位微处理器机接口,可
第六章模拟量输入输出
以用 8 位数据线传送数据,它们的选通信号相同,可以把12 位数据同时送给12 位的寄存器。
(2)若将其设计为12 位的输入寄存器,与8 位微处理器机接口时,必须要外扩数
据锁存器。
第六章模拟量输入输出
题 6-8 试比较积分型的A/D 转换器与逐次逼近式的A/D 转换器二者的优缺点。
答:1、积分型的A/D 转换器的优点是对常态干扰(串模干扰)有很强的抑制作用,精度高;
缺点是转换速度比较慢、转换时间不固定。
2、逐次逼近式A/D 转换器的优点是转换速度较快,转换时间固定,不随输入信号的变
化而变化;缺点是抗干扰能力相对积分型的差。
题 6-9 A/D 转换器的主要技术参数有哪几个?它们的物理意义各是什么?
答:1、分辨率:反映A/D 转换器对输入微小变化响应的能力,通常用数字输出最低位(LSB)
所对应的模拟输入的电平值表示。
2、精度:有绝对精度和相对精度两种表示方法。
(1)绝对精度:是指对应于给定的满刻度数字量,D/A 实际输出与理论值之间的误差。
该误差是由于D/A 的增益误差、零点误差和噪声等引起的。
(2)相对精度:是指在满刻度已校准的情况下,在整个刻度范围内对应于任一数码的
模拟量输出与理论值之差。
3、转换时间:是指完成一次A/D 转换所需的时间,即由发出启动转换命令信号到转换
结束信号开始有效的时间间隔。
4、电源灵敏度:是指A/D 转换芯片的供电电源的电压发生变化时,产生的转换误差。
5、量程:是指所能转换的模拟输入电压范围,分单极性、双极性两种类型。
6、输出逻辑电平:多数A/D 转换器的输出电平与TTL 电平兼容。在考虑数字量输出
与微处理器的数据总线接口时,应注意是否要三态逻辑输出,是否要对数据进行锁存等。
7、工作温度范围:由于温度会对比较器、运算放大器、电阻网络等产生影响,故只在
一定的温度范围内才能保证额定精度标准。
题 6-10 以8 位逐次逼近式的A/D 转换器为例,说明它的工作原理,并回答以下
1、为什么逐次逼近式的A/D 转换器比积分式的A/D 转换器的转换时间短?
A/D 转换器的转换时间的实际含义是什么?
2、A/D 转换器的分辨率用什么表示?其物理意义是什么?
答:1、逐次逼近式A/D 转换器是利用比较器从高位到低位依次进行试探比较,速度比较快;
积分式的A/D 转换器把输入电压转换为与其平均值成正比的时间间隔,同时把此间隔转换
为数字,需要时间比较长。
转换时间也表示 A/D 转换器的速度,它决定了可以采样信号的最高频率。
2、分辨率通常用数字输出最低位(LSB)所对应的模拟输入的电平值表示,它反映A/D
转换器对输入微小变化响应的能力。
题 6-11 已知ADC 0809 的时钟频率为640kHz,为了简化电路,一般采用500kHz,
现有单片机与其接口,单片机的主频为4MHz,现拟利用双D 触发器74LS74 将
4MHz 分频得到ADC 0809 所需的CLOCk 信号,试问:
1、需要几片74LS74?
2、74LS74 的逻辑引脚图如题图6-11 所示,请画出其正确的分频电路,并将
其输出注明至CLOCK 信号。
第六章模拟量输入输出
答:1、由4M/500k=4 知,需要八分频。需要4 个D 触发器,即需要两片4LS74。
题 6-12 若ADC 0809 A/D 转换器与Intel 8088 CPU 通过Intel 8255 接口,设8255
的PB 为数据口,PA,PC 为控制口。将8 路输入模拟量顺序从IN0~IN7 转换成数
字量,并顺序地放于内存中。
1、画出ADC 0809 通过Intel 8255 与Intel 8088 CPU 接口的框图。
2、画出实现以上数据采集的流程图,并用汇编语言编写程序。
第六章模拟量输入输出
2、 MOV AL,92H
MOV DX,83H
MOV AX,DATA1
MOV SI,2000H ;存储区的地址
MOV BL,8 ;循环的次数
MOV DX,88H ;从IN0 开始转换
LOP1: IN AL,DX
MOV DX,80H
LOP2: IN AL,DX ;读A 口的内容
TEST AL,01H ;检测EOC,判断是否转换完毕
MOV DX,81H
IN AL,DX ;读B 口的内容
MOV [SI],AL ;存入缓冲区
题 6-13 V/F 转换器与A/D 转换器相比有何特点,为何说它可适用于电磁干扰严
重的工作环境?
第六章模拟量输入输出
答:1、V/F 转换器的主要特点:
(1)V/F 转换器的最大特点使单路脉冲输出:便于实现数字量的光电隔离,可用于强
电磁干扰的应用场合。
(2)线性度好、工作频率高。
(3)对工频干扰有一定抑制作用。
(4)灵活的输入配置:允许输入电压或电流有一个宽的变化范围。
(5)可选择单极性、双极性或差分V/F 转换器转换器。
2、V/F 转换器本身就是一个积分过程,且用V/F 转换器实现A/D 转换,就是频率技术
过程,相当于在计数时间内对频率信号进行积分,因而具有较强的抗干扰能力,另外可采用
光电耦合连接V/F 转换器与计算机之间的通道,实现光电隔离。所以可以用于电磁干扰严
重的工作环境。
题 6-14 在图6.29 所示的多路模拟量共享A/D 转换器和D/A 转换器的电路中,
若模拟量输入和输出各有8 路,今要选择模拟多路开关,请回答以下问题:
1、对于8 路模拟量输入电路,选哪种多路开关合适?
2、对于8 路模拟量输出电路,应选择哪种型号的多路开关?
答:1、应选择由多到一的模拟多路开关,例如AD7501,AD7503 即可。当然选择由多到一
和由一到多的双向开关也可用。
2、必须选由一到多的模拟多路开关,例如:CD4015B。
题 6-15 已知八选一模拟多路开关集成芯片AD7501 的真值表如表6.6 所示,若
由EN 和三条地址线A0、A1、A2 的状态来依次选择8 个模拟通道,如题图6-15
所示,请编写相应的程序段。
第六章模拟量输入输出
答: MAIN: MOV DX,200H
MOV CX,08H
K: MOV DX,00H
CALL DELAY
题 6-16 采样保持器在数据采集系统中起什么作用?对于什么类型的模拟量,不
需采样保持器?
答:1、A/D 转换器完成一次完整的转换过程是需要时间的,如果在转换过程中模拟信号有
较大的变化将会引起转换误差,采样保持器的作用是在A/D 进行转换期间,保持采样输入
信号大小不变。
第六章模拟量输入输出
2、为了满足A/D 转换精度的要求,希望在转换时间内,最大信号变化幅度应小于A/D
转换器的量化误差。也可以说,对于变化较缓慢的模拟信号,可以不用采样保持器。
题 6-17 以LF398 采样保持器为例,简述采样保持器的工作原理。选择保持电容
器应考虑什么因素?
答:1、采样保持电路有两种工作模式:采样模式和保持模式。
当控制信号(8 脚)大于1.4V 并且参考电压(7 脚)接地时,LF398 处于采样期
间,模式控制开关闭合,通过开关对电容快速充电,采样保持器的输出随输入变化。
当控制信号(8 脚)和参考电压(7 脚)都接地时,LF398 处于保持期间,模式控
制开关断开,由于输出运放的输入阻抗高,理想情况下,电容器将保持充电时的最高值,处
于保持状态。
2、电容值的选择应综合考虑精度、采样频率、下降误差、采样/保持偏差等参数。
题 6-18 已知陶瓷封装的12 位A/D 转换芯片AD574AKD,其线性误差如表6.3
所示,转换时间Te=25 微秒,如果用它直接采集一个每秒正、负变化20 次的交
变模拟信号AI 的波形,数据采集系统的组成框图如题图6-18 所示,请回答如下
1、图6-18 的电路中,80C196 单片机能否正确采集AI 的波形?
2、若要求以上电路转换结果的误差小于等于A/D 转换器的线性误差,则模
拟信号AI 的变化频率必须限于多大的范围内?
3、若想要采集一路市电的交流电压信号,需对以上电路进行哪些改进?有
几种途径可以满足正确采集市电的交流电压信号的要求?
答:1、可以正确采集AI 的波形。A/D 转换芯片的频率是40kHz,一个周期可以采样2000
2、要想误差小于A/D 转换器的线性误差,模拟信号的变化频率要小于0.77Hz
3、要想采集市电信号,要在A/D 转换芯片和传感器之间,添加采样保持器。其他的途
径比如选用速度更快的A/D 转换芯片;将交流信号转化为直流信号,再对直流信号进行采
题 6-19 采样定理的内容是什么?有何重要意义?若被采样的信号为50Hz 的正
弦交流信号,含有高次谐波,今需利用傅氏变换分析该该交流信号含有1~32 次
谐波的含量,试问:
第六章模拟量输入输出
1、每周波至少应采多少点,才能分析出32 次谐波?
2、采样频率至少应为多少千赫?
答:采样定理的内容是:只要采样频率以高于两倍的信号最高频率进行采样,那么用采样所
得的序列可以恢复原始信号。它的意义是:指明了在怎样的采样频率下,才能使采样后所得
的序列包含原始信号的所有信息,为连续信号离散化提供了理论依据。
1、由采样定理得,采样频率至少为最高频率的两倍。每周波应采32*2=64 点。
2、采样频率为50*64=3200Hz,即为3.2 千赫。
答案/勘误表.txt
第2页 倒数第九行,把‘5.第五代(1993年后)64位高档微处理器’中的‘高档’去掉
第51页 第十一行,习题1-12 (6)-128 改为-127
第137页 倒数第四行,把‘MOV AX,4CH’改为‘MOV AH,4CH’
第158页 倒数第四行,把'CS、DS、DS或SS''CS、DS、ES或SS'
第159页 第十四行,把‘MOV DA,AX’改为‘MOV DS,AX’
第270页 题4-10、题4-11,题目有错。
答案/勘误表.txt[
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 js负数转正数 的文章

 

随机推荐