1OF1;执行:ANDAX8219H指令后,OF0。17、执行下列三条指令后:MOVSP,1000HPUSHAXCALLBX(SP)=0FFCH。18、主程序与子程序之间的参数传递方法有寄存器参数传递方式、存储单元参数传递方式及堆栈参数传递方式等三种。
二、指令正误判断,对正确指令写出源操作数或操作数的寻址方式,对错误指令写出原因(设VAR1VAR2为字变量L1为标号)分)(8
1MOVBX,VAR1SI;正确。SRC的寻址方式为寄存器相对寻址。
1
f2345678
MOVALDX;错误。DX不能作间接寄存器用。或能作间接寻址用的寄存器只有:BX、SI、DI。MOVBPAL;错误。类型不一致。MOVCSAX;错误。CS不能作DST。MOVDS0100H;错误。当DS、ES、SS作DST时,SRC不能为立即数寻址。JMPL1正确。断内直接寻址JMPVAR1SI正确。断间间接寻址JGL1;正确。段内相对寻址
三、写出完成下列要求的变量定义语句(10分)
1在变量var1中保存4个字变量:4512H,451211003
Var1DW4512H451211003
2在变量var2中保存字符串:’XiDia
’’2010’’LUCK’
Var2DB’XiDia
’’2010’’LUCK’
3在缓冲区buf1中留出100个字节的存储空间;
Buf1DB100DUP
4在缓冲区buf2保存5个字节的55H,再保存10个字节的240并将这一过程重复7次;
Buf2DB7DUP5DUP55H10DUP240
5在变量var3中保存缓冲区buf1的长度;
Var3DBLENGTHBuf1
四、程序填空与分析题(共15分)1、分析下列程序段执行后,求BX寄存器的内容(3分)
MOVCL3MOVBX0B7HROLBX1RORBXCLBX:0C02DH
2、请在下面的程序段中空行处填写相应语句使其完成:在Buf为首地址的字节单元的Cou
t个无符号数中找出最大数并送入MAX单元的功能。分)(6BUFDB5,6,7,58H,62,45H,127,…COUNTEQUBUFMAXDB…MOVBXOFFSETBUFMOVCXCOUNT1MOVALBXLOP1INCBX
CMPALBX
JAENEXTMOVALBXNEXTDECCX
JNZLOP1
MOVMAXAL五、硬件应用题(35分)
2
f1、74LS245数据双向缓冲器的引脚及功能图如图1所示。请画出8086CPU工作在最小方式下的系统数据总线D15~D0形成电路。分)(6
23456789
A0A1A2A3A4A5A6A7
B0B1B2B3B4B5B6B7
1817161513141211
E001
DIR01XAA
方向BB
19E1DIR
a74LS245逻辑及引脚图1
A、B边均为高阻
b74LS245功能
74LS245数据双向缓冲器的引脚及功能图
解:根据AD15~AD0、DEN和DTR信号功能以及74LS245芯片引脚功能,设计的系统数据总线D15~D0形成电路如下图所示。
74LS245A0B0AD15AD8DTRD15D8
DIR
A7
74LS245A0B0AD7AD0D7D0
B7E
A7DIR
B7E
DEN
2、在8086CPU工作在最小方式组成的微机系统中,扩充设计r