微机原理Word文档下载推荐.docx
- 文档编号:21336866
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:25
- 大小:24.22KB
微机原理Word文档下载推荐.docx
《微机原理Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《微机原理Word文档下载推荐.docx(25页珍藏版)》请在冰豆网上搜索。
(6)设(AX)=2345H,(DX)=5219H,请指出两个数据相加或相减后,FLAG中状态标志位的状态.
相加:
CF=0,SF=0,ZF=0,AF=0,OF=0,PF=0
相减:
0010001101000101
1101001000011001
补1010110111100111
1101000100101110
CF=0,SF=1,ZF=0,AF=0,OF=0,PF=0
(7)8086CPU工作在最小模式下:
访问存储器要利用:
M/IO、ALE、BHE、RD、WR、DT/R、DEN、READY和数据、地址总线。
访问I/O要利用:
当HOLD有效并得到响应时,CPU置高阻的信号有:
数据/地址总线、数据状态总线及M/IO、BHE、RD、WR、DT/R、DEN、INTA。
第三章
P134
(1)D
(2)C(3)A(4)A
2.填空题
(1)递增
(2)60H0
(3)1F02CH
4.请指出下列指令中源操作数和目的操作数的寻址方式。
(1)源操作数为立即寻址,目的操作数为寄存器寻址
(2)源操作数为立即寻址,目的操作数为寄存器间接寻址
(3)源操作数为寄存器间接寻址,目的操作数为寄存器寻址
(4)源操作数为寄存器寻址,目的操作数为寄存器寻址
(5)单一操作数(源操作数)为寄存器寻址
(6)单一操作数(目的操作数)为寄存器寻址
(7)源操作数为相对基址变址寻址,目的操作数为寄存器寻址
(8)源操作数为寄存器间接寻址,目的操作数为寄存器寻址
(9)源操作数为立即寻址和寄存器寻址,目的操作数寄存器寻址
(10)单一操作数为段间直接寻址(相对变址寻址)
5.请写出如下程序片段中每条逻辑运算指令执行后标志ZF、SF、和PF的状态:
MOVAL,0AH;
各标志位保持不变
ANDAL,0FH;
ZF=0SF=0PF=1
ORAL,04BH;
XORAL,AL;
ZF=1SF=0PF=1
6.请写出如下程序片段中每条算术运算指令执行后标志CF、ZF、SF、OF、PF和AF的状态:
MOVAL,54H;
ADDAL,4FH;
CF=0ZF=0SF=1OF=1AF=1PF=1
CMPAL,0C1H;
CF=1ZF=0SF=1OF=0AF=0PF=1
SUBAL,AL;
CF=0ZF=1SF=0OF=0AF=0PF=1
INCAL;
CF=0ZF=0SF=OF=0AF=0PF=0
7.(DS)=3000H,(SS)=1500H,(SI)=010CH,(BX)=0870H,(BP)=0500H,指出下列指令的目的操作数字段寻址方式,并计算目的操作数字段的物理地址。
(1)MOV[BX],CX
目的操作数为寄存器间接寻址
目的操作数的物理地址为:
DS×
16+0870H=30870H
(2)MOV[1000H],BX
目的操作数为直接寻址
16+1000H=31000H
(3)MOV[BP],BX
SS×
16+0500H=15500H
(4)MOV[BP+100],CX
目的操作数为寄存器相对寻址
16+0500H+64H=15564H
(5)MOV[BX+100][SI],CX
目的操作数为相对基址加变址寻址
16+0870H+64H+010CH=309E0H
8.指出如下指令哪些是错误的,并说明原因:
(1)MOV[SP],BX
错。
(2)MOVCS,BX
CS寄存器不能赋值,要由装入程序确定
(3)POPCS
(4)JMPBX
对。
(5)SUB[BP+DI-1000],AL
偏移量不能为负。
但编译能通过。
(6)SHLAX,CX
源操作数最大为255,只能是CL,不能是CX
(7)XCHGES:
[BX],AL
(8)LEAAX,[BX+DI]
9.已知(SS)=2800H,(SP)=0010H,(AX)=0FA0H,(BX)=1002H,下列指令连续执行,请指出每条指令执行后SS、SP、AX、BX寄存器中的内容是多少?
PUSHAX;
(SS)=2800H,(SP)=000EH,(AX)=0FA0H,(BX)=1002H
PUSHBX;
(SS)=2800H,(SP)=000CH,(AX)=0FA0H,(BX)=1002H
POPAX;
(SS)=2800H,(SP)=000EH,(AX)=1002H,(BX)=1002H
POPBX;
(SS)=2800H,(SP)=0010H,(AX)=1002H,(BX)=0FA0H
10.阅读下列各小题的指令序列,在后面空格中填入该指令序列的执行结果。
(1)MOVBL,26H
MOVAL,95H
ADDAL,BL
DAA
AL=21HBL=26HCF=1
(2)MOVAX,1E54H
STC
MOVDX,95
XORDH,0FFH
SBBAX,DX
AX=1EF5HCF=1
11.已知程序段如下:
CMPAX,BX
JNCK1
JNOK2
JMPK3
假设有以下三组AX、BX值,那么在程序执行后,分别转向哪里?
(1)(AX)=0E301H,(BX)=8F50H
转向K1
(2)(AX)=8F50H,(BX)=0E301H
转向K2
(1)(AX)=147BH,(BX)=80DCH
转向K3
第四章
P183
(1)CB
(2)B(3)B(4)D
3.
(1)DATA1EQUTHISBYTE
DA1DW1234H,567H,89ABH
(2)DATA2DW56H,0BCH,79H,14H
(3)DATA3DB6DUP(‘c’),2DUP(3,3,1),20DUP(?
)
(4)STRINGDB‘HELLOWORLD!
’
4.
DATA1DB00H,0AH,10H
DATA2DB15DUP(04H,3DUP(08H),09H)
DATA3DW6577H,636CH,6D6FH
5.
LEABX,TABLE
MOVBX,OFFSETTABLE
8.
(1)宏展开:
+PUSHAX
+MOVAX,AX
+SUBAX,AX
+CMPAX,0
+JGENEXT(0014)
+MOVBX,AX
+POPAX
(2)调用无效。
语法错误(立即数的使用)。
(3)宏展开:
+MOVAX,[BX+SI]
+SUBAX,[BX+SI+X]
+JGENEXT(0025)
+MOVCX,AX
调用无效。
相对基址加变址寻址方式形成的值在汇编时是不知道的。
11.
CMPNMACROX,Y,SUM
PUSHAX
PUSHDX
MOVAL,X
CMPAL,Y
MOVDL,5
MULDL
ADDAX,Y
JMPK2
K1:
MOVAL,Y
ADDAX,X
K2:
MOVSUM,AX
POPAX
ENDM
12.
DSEGSEGMENT
CHARDB61DUP(?
DSEGENDS
CSEGSEGMENT
ASSUMECS:
CSEG,DS:
DSEG
STARTPROCFAR
MOVAX,DSEG
MOVDS,AX
MOVDX,OFFSETCHAR
MOVAH,0AH
INT21H
MOVAH,09H
MOVAH,4CH
STARTENDP
CSEGENDS
ENDSTART
微机原理第五章部分习题答案
4、试编写一汇编程序,要求实现将ASCII码表示的两位十进制数转换为一字节二进制数。
DATASEGMENT
ASCDB36H,35H
ASCENDDB?
DATAENDS
CODESEGMENT
CODE,DS:
DATA
DECIBINPROCFAR
MOVAX,DATA
MOVBX,OFFSETASC
MOVAL,[BX]
CMPAL,30H
JLEXIT
CMPAL,39H
JGEXIT
SUBAL,30H
MOVDL,[BX+1]
CMPDL,30H
CMPDL,39H
SUBDL,30H
MOVCL,10
MULCL
ADDAL,DL
MOVASCEND,AL
EXIT:
MOVAH,4CH
INT21H
DECIBINENDP
CODEENDS
ENDDECIBIN
5.某存储区中存有20个单字节数,试编写一汇编语言分别求出其绝对值并放回原处。
MUMDB1,2,3,-9,0,7,5,-4,-7,-11,34,-67,-44,-51,1,3,6,8,9,3
CSEG,DS:
PUSHDS
XORAX,AX
PUSHAX
MOVCX,20
MOVSI,OFFSETMUM
LP1:
MOVAL,[SI]
ANDAL,AL
JNSDONE
NEGAL
DONE:
MOV[SI],AL
INCSI
LOOPLP1
STARTENDP
6、试编写一汇编程序,将AX中的各位取反,然后统计出AX中“0”的个数,将结果保存到CL中。
MAINPROCFAR
CODE
START:
MOVAX,0E001H
MOVDL,0
MOVCL,16
NOTAX
RETEST:
ANDAX,AX
JSSKIP
INCDL
SKIP:
SHLAX,1
LOOPRETEST
MOVCL,DL
EXIT:
MAINENDP
CODEENDS
12已知a1~a20依次存放在以BUF为首址的数据区,每个数据占两个字节,SUM也是两个字节。
试编程计算SUM=a1+a2+a3+...+a20
DATDW0,1,8,27,64,-9,-5,6,77,-5,55,88,99,33,55,1,3,5,6,87
SUMDW?
MOVAX,0
MOVSI,OFFSETDAT
ADDAX,[SI]
14编一字程序,计算f(t)=at3+bt2+ct+d。
设a,b,c,d,t均为一位十进制数,结果存入RESULT单元。
AA1DB8
BBBDB5
CCCDB5
DDDDB5
TTTDB2
QQQDW3DUP(?
RESULTDW?
MOVSI,OFFSETQQQ
MOVBL,TTT
MOVBH,0
MOVAX,BX
MULBX
MOV[SI],AX;
存t2
MOV[SI+2],AX;
存t3
MOVAL,AA1
MOVAH,0
MULWORDPTR[SI+2]
MOVRESULT,AX
MOVAL,BBB
MULWORDPTR[SI]
ADDRESULT,AX
MOVAL,CCC
MULTTT
MOVAL,DDD
MOVCX,RESULT
15求出前20个Fibonacci数,存入数据变量FN开始的区域中。
Fibonacc数的定义为:
f0=0,f1=1,fn+2=fn+fn+1
F1DW0
F2DW1
FNDW20DUP(?
MOVCX,18
MOVAX,F1
MOVBX,F2
MOVSI,OFFSETFN
MOV[SI],AX
MOV[SI],BX
LL:
ADDAX,BX
ADDSI,2
MOVBX,[SI-2]
LOOPLL
第七章
1,
(1)B
(2)CD(3)B
2,
(1)0100:
48B00100:
48B34
(2)857
(3)中断请求、中断判优、中断响应、中断服务、中断返回
4,PORT0EQU40H
PORT1EQU41H;
设置I/O地址号为40H和41H
MOVAL,13H
MOVDX,PORT0
OUTDX,AL;
设置ICW1命令字边沿触发方式,单片无级联,需要设置ICW4
INCDX;
DX增1,为设置下面的命令字做准备
MOVAL,08H
OUTDX,AL;
设置ICW2,中断类型号为从08H开始的8个
MOVAL,09H
设置ICW4一般EOI缓冲方式,全嵌套方式
5,
MOVDX,1207H
INAL,DX
ORAL,01011000B(或者58H)
OUTDX,AL
7,
(1)主片:
08H~0FH
从片:
80H~87H
(2)译码器输入可任选6个地址信号,从片的INT输入可以任选主片除IR5的中断源,下面的程序中选的是IR2
(3)主片初始化程序:
MOVAX,00H
MOVDS,AX
MOVBX,0DH*4
MOVAX,1260H
MOVDS:
[BX],AX
MOVAX,4310H
[BX+2],AX
MOVAL,11H
OUT30H,AL
MOVAL,08H
OUT31H,AL
MOVAL,04H
OUT31H,AL
MOVAL,1DH
从片初始化程序:
MOVBX,85H*4
MOVAX,2340H
MOVAL,11H
OUT36H,AL
MOVAL,80H
OUT37H,AL
MOVAL,02H
OUT37H,AL
MOVAL,01H
OUT37H,AL
微机原理习题第8章部分答案
2、I/O接口的主要功能有哪些?
一般有哪两种编址方式?
两种编址方式各自有什么特点?
I/O接口的主要功能有:
(l)解决CPU与外设之间速度不匹配问题
(2)实现信号电平的转换
(3)实现信号格式的转换
I/O端口的编址方式有两种:
统一编址方式和独立编址方式。
(1)统一编址方式(存储器映像寻址)
优点:
1)简化了指令系统的设计,在微处理器指令集中不必包含I/O操作指令;
2)访问I/O设备的指令类型多、功能强,能用访问存储器指令,对I/O设备进行方便、灵活的操作;
3)I/O地址空间可大可小,能根据实际系统上的外设数目来调整。
缺点:
I/O端口占用了存储单元的地址空间,且I/O译码电路变得较复杂。
其次,访问存储器的指令一般要比较长,这样延长了输入输出操作时间。
(2)独立编址方式
1)可读性好,输入输出指令和访问存储器的指令有明显的区别,使程序清晰;
2)I/O指令长度短,执行的速度快,占用内存空间少;
3)I/O地址译码电路较简单。
CPU指令系统中必须有专门的IN和OUT指令,而且这些指令的功能没有访问存储器的指令强。
4、什么是直接存储器存取方式(DMA)?
DMA控制器在CPU与外设的数据传送过程中发挥怎样的作用?
直接存储器传送DMA指将外设的数据不经过CPU直接送入内存储器,或者,从内存储器不经过CPU直接送往外部设备。
DMA控制器的功能:
(1)能向CPU发出总线请求信号
(2)能实行对总线的控制
(3)能发送地址信号并对内存储器寻址
(4)能修改地址指针
(5)能向存储器和外设发出读/写控制信号
(6)能判断DMA传送是否结束
(7)能发出DMA过程结束信号,使CPU能正常工作
7、在8086微机系统中,有一外设的接口地址为2A8H~2AFH,请用74LS128译码器设计符合要求的地址译码电路.
9、一个采用查询式数据传送的输出接口,其数据端口地址为300H,状态端口地址为301H,外设状态位用D7位表示。
如果要将存储器缓冲区DATA中的200个字节数据通过该输出口输出,画出流程图,编写控制程序段。
程序段为:
LEASI,DATA
MOVCX,200
LP1:
MOVDX,301H
NR:
INAL,DX
SHLAL,1
JNCNR
DECDX
MOVAL,[SI]
INCSI
LOOPLP1
微机原理第9章部分习题答案
1、
(1)D
(2)C(3)B(4)D
2、填空题
(1)3,基本输入/输出方式,选通输入/输出方式,双向总线I/O方式
(2)外设响应信号
(3)方式选择控制字,置位/复位控制字
(4)中断允许信号,PC6
3、设8255A的端口A和B均工作与方式1,端口A输出,端口B和C为输入,端口A地址为00C0H。
(1)写出工作方式控制字。
0AFH
(2)编写8255A的初始化程序。
MOVDX,00C3H
MOVAL,0AFH
(3)若要用置位/复位方式将PC2置为1,PC7清0,试写出相应程序。
MOVDX,00C3H
MOVAL,05H
MOVAL,0EH
4、现拟用8255A设计一个3X3的键盘,并通过发光二极管显示按键状态。
要求该键盘能表示数字1~9,且按下1~8按键时,有一个相应的发光二极管点亮
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理