工业用微型计算机复习Word文件下载.docx
- 文档编号:20915646
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:10
- 大小:20.41KB
工业用微型计算机复习Word文件下载.docx
《工业用微型计算机复习Word文件下载.docx》由会员分享,可在线阅读,更多相关《工业用微型计算机复习Word文件下载.docx(10页珍藏版)》请在冰豆网上搜索。
LP:
INCDI
CMPDI
CMPDI,08H
JAEALL
CMPAL,200H[DI]
JLEA22
A22:
JMPLP
ALLINT3
DS:
200HDB22H,33H,44H,55H
88H,96H,0AAH,0FFH
程序执行后,AL=88H该程序的功能是将最小的数送到AL中。
37.有程序段如下:
ARRAYDB3,5,-3,-2,4,5,-8,6
MOVCX,7
MOVDI,0
MOVAL,ARRAY
L1:
CMPAL,ARRAY[DI]
JGEL2
MOVAL,ARRAY[DI]
L2:
LOOPL1
(1)程序段执行后,AL的内容为6。
(2)该程序段完成的功能是什么?
求ARRAY中8个带符号数和最大值。
38.有程序段如下:
MOVBL,96H
MOVAL,BL
MOVCL,4
SHRALCL
MOVBH,AL
ANDBL,0FH
INT3
程序执行后,BH=09HBL=06H。
四.编写程序题
39.32个8位有符号数,存储在以BUFFER为首地址的数据段中,试填空完成下列程序,统计其中有多少个非负数,并存放在DL中。
MOVBX,OFFSETBUFFER
MOVCX,32
LOPL:
MOVAL,[BX]
CMPAL,0
JLNEXT
INCDL
NEXT:
INCBX
LOOPLOPL
INT3
五.简单应用题
40.在PC/XT上扩展一片8251,其数据端口地址为20AH,控制/状态端口地址为20BH。
假设芯片8251已初始化。
要求用查询的方式接受8251串行口输入的字符数据,并在主机显示器上把该字符显示出来。
试完成对应的程序段。
MOVDX,20BH
INAL,DX;
查询8251的状态端口
TESTAL,02;
检查8251状态D2位
JZNEXT
MOVDX,20AH;
有字符
读入字符
MOV,DL,AL;
显示字符
MOVAH,2
INT21H;
DOS功能调用,显示字符
JMPNEXT
一.概念
1.二进制逻辑运算
(1).与运算:
有0出0,全1出1;
(2).或运算:
有1生1,全0出1;
(3).异或运算:
相同出0,相异出1。
2.补码
(1).正数:
原码=反码=补码
(2).负数:
符号位除外,其余位先取反后加1。
3.8086/8088是16位微处理器,有40个引脚。
8086引脚有20根地址总线,16根数据总线;
8088引脚有20根地址总线,8根数据总线。
4.寻址方式
(1).立即寻址:
MOVCL,28H;
(2).寄存器寻址:
MOVSS,AX;
(3).直接寻址:
MOVAX,[3100H];
(4).変址寻址:
MOVBX,[SI+1003H]。
二.8086微型计算机机器语言指令
1.寄存器
(1).通用寄存器(reg):
ax,bx,cx,dx数据寄存器。
si,di为变址寄存器。
sp堆栈指针,用r16表示。
每个数据可分为两个八位的寄存器:
ah/al,bh/bl,ch/cl,ch/cl。
用r8表示。
(2).段寄存器(seg):
cs,ss,ds,es分别为代码段,堆栈段,数据段,附加段寄存器。
(3).指令指针:
ip。
(4)标志寄存器:
flags。
flags各位属性:
1514131211109876543210
ofdfiftfsfzfafpfof
cf:
进位标志,pf:
奇偶标志,af:
辅助进位标志,zf:
零标志,sf:
符号标志,tf:
陷井,if:
中断允许,df:
方向标志,of:
溢出标志。
2.指令简介
r8:
8位通用寄存器,r16:
16位通用寄存器,reg:
r8和r16,seg:
代表段寄存器,m8:
8位存储器操作数单元,m16:
16位存储器操作数单元,mem:
代表m8和m16,i8:
8位立即数,i16:
16位立即数,imm:
代表i8和i16,dest:
目的操作数,src源操作数。
数据传送类指令
(1).通用数据传送:
movsrc,dest;
src<
-dest.寻址:
reg/mem,imm.reg/mem/seg,reg.reg/seg,mem.reg/mem,seg.
xchgreg,reg/mem;
reg<
->
reg/mem.xlat;
al<
-ds:
[bx+al].
堆栈操作:
pushreg/mem/seg;
sp<
-sp-2,ss:
[sp]<
-reg/mem/seg.popreg/mem/seg;
reg/mem/seg<
-ss:
[sp],sp<
-sp+2.
(2).标志寄存器传送:
lahf;
ah<
-flags的低字节.sahf;
flags的低字节<
-ah.pushf;
sp<
-sp-2;
ss;
-flags.popf;
flags<
(3).地址传送:
lear16,mem;
r16<
-mem的有效地址。
ldsr16,mem;
-mem,ds<
-mem+2.lesr16,mem;
-mem,es<
-mem+2.
(4).输入,输出:
inal,i8;
-I/O端口i8.
inax,i8;
-I/O端口i8,
-I/O端口i8+1.
inal,dx;
-I/O端口[dx].
inax,dx;
-I/O端口[dx],
-I/O端口[dx+1].
outi8,al;
I/O端口i8<
-al.
outi8,ax;
-al,
I/O端口i8+1<
-ah.
outdx,al;
I/O端[dx]<
outdx,ax;
I/O端口[dx]<
-al,I/O端口[dx+1]<
3.算术运算类指令
(1).加法指令:
addsrc,dest;
-dest+src.
寻址:
reg,imm/reg/mem,mem,imm/reg.adcsrc,dest;
-dest+src+cf.
reg,imm/reg/mem,mem,imm/reg.increg/mem;
reg/mem<
-reg/mem+1.不影响cf标志。
(2).减法指令:
subsrc,dest;
-src-dest.
reg,imm/reg/mem,mem,imm/reg.
sbbsrc,dest;
-src-dest-cf.
decreg/mem;
-reg/mem-1.不影响cf标志。
negreg/mem;
-0-reg/mem.不影响cf标志。
cmpsrc,dest;
src-dest.
reg,imm/reg/mem,mem,imm/reg.(3)乘法指令:
a.无符号数乘:
mulm8/r8;
ax<
-al*r8/m8.mulr16/m16;
dx.ax<
-ax*r16/m16.
b.有符号数乘:
imulr8/m8;
-al*r8/m8.imulr16/m16;
乘法指令对标志的影响:
乘积的高一半为0,OF=CF=0;
否则OF=CF=1,对其他标志无影响。
(4)除法指令:
a.无符号数除:
divm8/r8;
-ax除以r8/m8的商。
-ax除以r8/m8的余数。
divm16/r16;
-dx.ax除以r`16/m16的商。
dx<
-dx.ax除以r16/m16的余数。
b.有符号数除:
idivm8/r8;
idivm16/r16;
-dx.ax除以r16/m16的`余数。
除法指令对标志没有影响,但可能产生溢出。
符号扩展指令:
cbw;
al符号扩展成ax.cwd;
ax符号扩展成dx.ax.
4.位操作类指令
(1).逻辑运算指令:
anddest,src;
dest<
-dest与src.
reg,imm/reg/mem.mem,imm/reg.ordest,src;
-dest或src.
寻址reg,imm/reg/mem.mem,imm/reg.xordest,src;
-dest异或src.notreg/mem;
-非reg/mem.testdest,src;
dest与src.
reg,imm/reg/mem.mem,imm/reg.jnz/jnezf=0不相等jnc/jnb/jaecf=0不低于jssf=1符号为负jbe/jnacf=1或zf=1不高于
jnssf=0符号为正jnbe/jacf=0且zf=0高于jp/jpepf=0'
1'
个数为偶jl/jngesf不等于of小于jnp/jpopf=0'
个数为奇jnl/jgesf=of不小于joof=1溢出jle/jngzf不等于of或zf=1不大于jnoof=0无溢出jnle/jgsf=of
zf=0大于
(2).循环指令:
looplabel;
cx<
-cx-1,cx不等于0,循环。
loopz/loopelabel;
-cx-1,cx不等于0且zf=1,循环。
loopnz/loopnelabel;
-cx-1,cx不等于0且zf=0,循环。
(3).子程序指令:
calllabel;
段内调用:
-ip,ip<
-ip+16位位移量。
callr16/m16;
-r16/m16。
callfarptrlabel;
段间调用:
-cs,sp<
[sp]=ip,ip<
-label偏移地址,cs<
-label段地址。
callfarptrmem;
-[mem],cs<
-[mem+2]。
ret;
ip<
-sp+2.reti16;
-sp+2,sp<
-sp+i16.ret;
-sp+2,cs<
-sp+2.
reti16;
-sp+i16.
(4).中断指令:
inti8;
产生i8号中断。
iret;
中断返回。
into;
若溢出,产生4号中断。
否则顺序执行。
处理机控制类指令:
标志位操作指令:
clc;
cf<
-0.stc;
-1.cmc;
-非cf.
cld;
df<
-0.std;
-1.cli;
if<
-0.禁止中断。
sti;
-1.允许中断。
CPU状态控制指令:
nop;
空操作。
seg:
;
即cs:
ss:
ds:
es:
取代默认的段寄存器。
lock;
封锁总线。
hlt;
进入暂停状态。
Esc6位立即数,reg/mem;
把浮点指令交给浮点处理器。
wait;
进入等待状态。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工业 微型计算机 复习