计算机硬件技术基础万晓冬习题Word文件下载.docx
《计算机硬件技术基础万晓冬习题Word文件下载.docx》由会员分享,可在线阅读,更多相关《计算机硬件技术基础万晓冬习题Word文件下载.docx(25页珍藏版)》请在冰豆网上搜索。
1—19典型微机有哪几种总线?
它们传送的是什么信息?
1—20什么是指令?
什么是程序?
1—21试用示意图说明内存储器的结构和读、写操作
1—22简述评估通用微型计算机主要技术指标。
2—18086/8088为什么要分为EU和BIU两部分?
每个部分又由哪几部分组成?
2—2简述8086/8088指令队列作用及工作过程。
2—3在执行指令期间,EU能直接访问存储器吗?
为什么?
2—48086/8088CP冲,供使用汇编语言的程序员使用的寄存器有哪些?
2—5试述SP、IP、BP、SI和DI寄存器名称的由来。
它们能否作为通用寄存器?
2—6为什么要设置段寄存器?
8086/8088有几个段寄存器?
2—78086/8088有几位状态位?
有几位控制位?
其含义各是什么?
2—88086/8088CPI使用的存储器为什么要分段?
怎样分段?
2—9简述A0与BHE在8086系统中的作用。
2—108086/8088CPL系统中为什么要采用地址锁存器8282/8283?
2—118086与8088CPI主要区别有哪些?
2—128086/8088单CPU和多CPU系统各自主要特点是什么?
差别在哪里?
2—13简述指令队列状态线QSI和QSO的含义。
2—148086构成系统分为哪两个存储体?
它们如何与地址、数据总线连接?
2—15什么是逻辑地址?
什么是物理地址?
它们之间有什么联系?
各用在何处?
2—16什么是基地址?
什么是偏移量?
它们之间有何联系?
2—17若CS为A000H试说明现行代码段可寻址的存储空间的范围。
2—18设现行数据段位于存储器B0000H到BFFFFH存储单元,DS段寄存器内容为多少?
2—19设双字节12345678H的起始地址是A001H试说明这个双字在存储器中如何存放?
2—20已知堆栈段寄存器SS=A000H堆栈指示器SP=0100H试将数据1234ABCDH推人堆栈,画出进栈示意图。
最后栈顶SP=?
2—21试求出下列运算后的各个状态标志,并说明进位标志和溢出标志的区别
(1)1278H+3469H
(2)54E3H-27AOH
(3)3881H+3597H
(4)01E3H一01E3H
2—228088CPU工作在最小模式(单CPU和最大模式(多CPU庄要特点是什么?
有何区别?
2—23在8088CPUX作在最小模式时。
⑴当CPU访问存储器时,要利用哪些信号?
(2)当CPU访问I/O时,要利用哪些信号?
(3)当HOLD有效并得到响应时,CPU的哪些信号置高阻?
2—24什么是时钟周期?
机器周期?
总线周期?
什么是指令周期?
2—25为什么要了解8086/8088CPU时序?
2—26试绘出8086单CPU系统访问I/O端口总线周期的时序图。
2—27试说明WMTC(10WCOAWMC(AIOW)同。
2—28在8086/8088多CPU系统中,存储器读总线周期中,RD可以从CPU发出,也可以从8288发出(MRDC)试
比较其异同?
2—29什么情况下插入Tw等待周期?
插入Tw多少,取决什么因素?
2—30什么情况会出现总线空闲周期?
2—31试用表格列出8088单CPU方式下,IO/MD—RDENRD及WR读/写存储器状态。
例如读存储器
RD=0。
2—32简述80386、80486和PentiumCPU基本组成与各部分作用。
2—33什么是实地址模式?
什么是保护模式?
什么是虚拟8086模式?
试列出三者主要特点。
2—34试说明80386、80486和Pentium控制寄存器的作用。
2—35CS寄存器在保护模式下叫什么名字?
DS寄存器呢?
2—36选择符中三个域的名字和大小各是多少?
2—37T1等1意味着什么?
2—38如果GDT寄存器值为0013000000FFH装入LDTR的选择符为0040H,试问装入缓存LDT描述符的起始地址是
多少?
2—39NT代表什么意思?
RF呢?
2—40如果标志寄存器的IOPL位为10,那么I/O指令的特权级为多少?
2—4180386、80486和Pentium虚拟地址空间有多大?
2—42虚拟地址的两部分各叫什么名字?
2—43数据段能有多大?
能有多小?
2—4480386、80486和Pentium虚拟地址空间最多能放多少个段?
2—45全局存储器地址空间有多大?
它能包含多少个段?
2—46如果允许分页,那么80386、80486和Pentium的地址空间可映射到多少页?
页有多大?
2—47页转换产生的线性地址的三部分各是什么?
给出每个部分的大小。
2—48设置转换检测缓冲器的目的是什么?
2—49页帧有多大?
什么选择页帧的存放位置?
2—50描述符中有多少个字节?
试给出每一个域名及大小?
2—51段描述符与什么寄存器相联?
系统段描述符呢?
2—52选择符022416装入了数据段寄存器,该值指向局部描述符表中从地址00100220H开始的段描述符。
如果
该描述符的字为:
[00100220H]=0110H
[00100222H]=0000H
[00100224H]=1A20H
[00100226H]=0000H
那么Limit和Base各为多少?
2—53页目录或页表项中最左20位表示什么?
2—54某一页帧的保护页模式是用户级访问权,管理员级可读/写,那么R/W
和U/S的设置是什么?
2—55某一页帧的页表项中P=0,那么试图访问该页帧时会发生什么情况?
2—56页目录项中的D位代表什么意思?
2—57试说明Pentium微处理器、PentiumPro、PH>
PM微处理器基本特点。
2—58什么是PM处理器系列代号?
使用系列代号的优缺点是什么?
3—1什么叫寻址方式?
一般微处理器有哪几类寻址方式?
各类寻址方式的基本特征是什么
3—2对于80X86/Pentium系列微处理器,存储器寻址的有效地址EA和实际地
址PA有什么区别?
3—380X86/Pentium的有效地址EA由哪四个分量组成?
它们可优化组合出哪些存储器寻址方式?
试讨论各种存
储器寻址方式与EA计算公式的关系。
3—4设BX=637DHSI=2A9BH位移量D=7237H,试求下列寻址下有效地址EA=?
(1)直接寻址
(2)基址寻址(3)使用BX的间接寻址
3—5分别指出下列指令中源操作数和目标操作数的寻址方式若是存储器寻址试用表达式表示出E心?
PA=?
4—
(9)MOV[BP],CX
(10)PUSHDS
(7)MOVAX,ES:
[BX](8)MOVAX,[BX+SI+20H]
3—6指出下列指令的源操作数字段是什么寻址方式?
(1)MOVEAX,EBX
(2)MOVEAX,[ECX][EBX]
(3)MOVEAX,[ESl)[EDXX2](4)MOVEAX,[ESIX8]
3—7分析下列指令在语法上是否有错,如有错,请指出错误之所在(针对8086/8088微处理器)。
(1)
SUBAX,[BX+BP]
(2)ADDVALUEl,VALUE2
(2)
(13)LEABX,4300H
(14)MOVAX,[CX]
3—8若S=2000HAX=3355H,B冶4466H试指出下列指令或程序段执行后有关寄存器的内容。
(1)PUSHAX执行后,AX=?
SP=?
(2)PUSHAX
PUSHBX
POPDX
执行后,AX=?
DX=?
S吐?
3—9设BX=6F30HB=0200H,SI=0046H,SS=2F00H[2F246H]=4154H,试求执行XCHGBX[BP+S1)后,
BX=?
[2F246H]=?
3—10设BX=0400H,SI=003CH执行LEABX[BX+SI+0F62H]后,BX=?
3—11设DS=C000H[C0010H]=0180H,[C0012H]=2000H,执行LDSSI,[10H]后Sl=?
DS=?
3—12已知DS=091DHSS=1E4AHAX=1234H,BX=0024H,CX=5678H,BP=0024HSI=0012H,Dl=
0032H,[09226H]=00F6H[09228H]=1E40H,[1E4F6H]=09IDH,试
求单独执行下列指令后的结果
(1)MOVCL,20H[BX][SI];
CL=?
(2)MOV[BP][DI]CX;
[1E4F6H]=?
(3)LEABX,20H[BX][SI];
BX=?
MOVAX2[BX];
AX=?
(4)LDSSI[BX][DI]
MOV[SI]BX;
SI=?
[SI]=?
(5)XCHGCX32H[BX];
XCHG20H[BX][SI],AX;
[09226H]=?
3—13执行下列指令后,标志寄存器中AF、CFOFSF、ZF标志位分别是什么状态?
MOVAX84AOH
ADDAX9460H
3—14按下列要求写出相应的指令或程序段
(1)写出两条使AX寄存器内容为0的指令。
⑵使BL寄存器中的高、低4位互换
(3)现有二个有符号数分别在N1、N2变量中,求N1/N2,商和余数分别送变量M1M2中。
(4)屏蔽BX寄存器的b4、b6、b11位。
(5)将AX寄存器的b5、b14位取反,其他位不变。
⑹测试DX寄存器的bO、b9位是否为“1"
。
(7)使CX寄存器中的整数变为奇数(如原来已是奇数,则不变)。
3—15写出把首地址为BLOCK勺字数组的第六个字送人AX的指令,要求使用下列寻址方式:
(1)寄存器间接寻址
(2)基址寻址
(3)相对基址变址寻址(4)直接寻址
3—16已知AX=8060HDX=580H,端口PORT的地址为40H,内容为4FH端口PORT2勺地址为45H,指出执行
下列指令后的结果在哪儿?
为多少?
(1)OUTDX,AL
(2)OUTDX,AX
(3)INAL,PORTl(4)INAX,40H
(5)OUTPORT2,AL(6)OUTPORT2,AX
3—17已知数据如题图3—1所示,数据是低位在前,按下列要求编写程序段:
(1)完成NUMI和NUM的两个字数据相加,和存放在NUMI中。
(2)完成NUMI单元开始的连续4个字节数据相加,和不超过一字节,放在RES单元。
(3)完成NUMI单元开始的连续8个字节数据相加,和为16位数,放在RES和RES+1两单元中(用循环)。
(4)完成NUMl和NUM的双倍精度字数据相加,和放在NUM开始的双字单元中。
3—18已知的BCD数如题图3—1所示,低位在前,按下列要求编写计算BCD数据(为压缩型BCD的程序段。
NUM1|48H|
I41H|
16H|
28H|
NUM258H|
22H|
52H|
84H|
RES|
||
题图3—1
⑴完成从NUMI单元开始的连续8个压缩BCD数相加,和(超过一字节)放在RES和
RES+1两单元中。
(2)完成NUMI单元和NUM单元的BCD数相减,其差存人RES单元,差=?
CF=?
3—19已知数据如题图3—1所示,低位在前,按下列要求编写程序段:
(1)NUMI和NUM两个数据相乘(均为无符号数),乘积放在RES开始的单元。
(2)NUMI和NUM两个字数据相乘(均为带符号数),乘积放在RES开始的单元。
(3)NUMI单元的字节数据除以46(均为无符号数),商和余数依次放人RES开始的
两个字节单元。
(4)NUMI字单元的字数据除以NUM字单元的字,商和余数依次放人RES开始的两
个字单元。
3—20使用移位指令来做乘以2和除以2是很方便的。
试把+53与一49分别乘以2,它们
各应用什么指令,得到的结果各是什么?
若除以2呢?
3—21令B©
00E3H变量VALUE勺内容为?
9H,下列指令单独执行后BX寄存器的
内容为多少?
(1)XORBX,VALUE
(2)ANDBX,VALUE
(3)R0RBX,1(4)ORBX,10F4H
(5)NOTBX
3—22若CPU中各寄存器及RAM参数如题图3—2所示,试求独立执行如下指令后,CPU中寄存器及RAM!
应内存
单元的内容为多
少?
RAM
20506H
20507H
20508H
20509H
2050AH
2050BH
2050CH
(1)MOVDX[BX]2;
DX=BX=
cpuIIcpu
CS
3000H
FFFEH
CX
DS
2050H
0004H
BX
SS
50A0H
2000H
SP
ES
0FFFH
17C6H
DX
IP
0000H
8094H
AX
DI
000AH
1403H
BP
SI
0008H
1
CF
执行前
执行后
06H
00H
87H
15H
37H
C5H
2FH
题图3—2
(3)PUSH
CX;
SP=[SP]
(4)M0VCX
BX;
CX=BX=
(5)TESTAX,OI;
AX=CF
(6)M0VAL,
[S1];
AL=
(7)ADCAL,[DI];
AL=CF=DAA;
(8)INCSI;
SI=
(9)DECDI;
DI=
(10)MOV[D1),AL;
[DI]=
(11)XCHGAX,DX;
AX=DX=
(12)XORAH,BL;
AH=BL=
(13)JMPDX;
IP=
3—23分别指出以下两个程序段的功能。
(2)CLD
LEADI,[0404H]
MOVCX,0080H
XORAX,AX
REP
(1)MOVCX,10
LEASI,FIRST
IEADI,SECOND
REPMOVSB
STOSW
3—24试编制完成AX*5/2的程序段。
3—25若AL=FFHBL:
03H,指出下列各指令执行后标志OFSF,PF,CF的状态.
(1)ADDBL,AL
(2)INCBL
(3)SUBBL,AL
(4)NEGBL
(5)CMPBL,AL
(6)MULBL
(7)ANDBL,AI
(8)IMULBL
(9)ORBL,AL
(10)SHLBL,1
(11)XORBL,BL
(13)SHRAL,1
(12)SARAL,1
3—26已知一个关于0〜9的数字的ASQ码表首址是当前数据段的0A80H现要找出数字5的ASCII码,试写出
用指令XLAT进行翻译的指令序列。
3—27设DS=2000H,BX=1256H,SI=528FH,位移量TABLED20A1H[232F7H]=3280H,[264E5H]=2450H,
执行下述指令:
(1)JMPBX;
IP=?
(2)JMPTABLE[BX];
(3)JMP[BX][SI];
IP=?
3—28设IP=3D8FHCS=4050H,S=0F17CH当执行CALL2000:
009AH后,试指出IP、CS、SP、[SP]、
[SP+1]、[SP+2]和[SP+3]的内容。
3—29试编写程序段,根据AL中的内容决定程序的走向:
若位0是1,其他位为0,转向LABl;
若位1是1,其他
位为0,则转向LAB2若位2为1,其他位为0,则转向LAB3若位0至位2都是0,则顺序执行。
假定所有
的转移都是短转移。
3—30试比较无条件转移指令、条件转移指令、调用指令和中断指令有什么异同。
3—31设X、丫变量中均为16位操作数,先判断X是否大于50,如大于则转移到N—HIGH,否则做X—丫。
相减后
如溢出则转移到OVERFLOW执行,否则求(X—Y)的绝对值,并把结果存人RESULTK
3—32写出以下计算的指令序列,其中X、丫、Z、RW均为存放16位无符号数单元的地址(不考虑进位与借位
):
(1)Z—V—(Z十X)
(2)ZT十(X+6)—(R十9)
(3)Z(商)—(WXX)/(Y+6),2余数
4—1写出在BLOC开始的连续八个单元中依次存放数据20H30H40H50H
60H70H80H90H的数据定
义语句(分别用DBDWDD伪指令)。
4—2以图示说明下列语句实现内存分配和预置数据:
VARlDB12,-12H,3DUP(0,FFH)
VAR2DB100DUP(0,2DUP(1,2),0,3)
VAR3DB‘WELCOME'
TO
VAR4DWVAR3+6
VAR5DDVAR3
4—3写出具有下列功能的伪指令语句(序列):
(1)将字数据2786H23H1A24H存放在定义为字节变量DATAI的存储区中。
(2)将字节数据30HoB4H62H10H存放在定义为字变量DATA2的存储单元中(要求不改变字节数据存
放次序)。
(3)在DATA3为起始地址的存储单元中连续存放以下字节数据:
4个
20H,20,0,6个(1,2)
4—4对于下列数据定义,在括号内写出各指令语句独立执行后的结果:
NUM—BDB2DUP(?
)
NUM—WDW10DUP(42H)
ARRAY—BDB‘DISP—IMAGE'
(1)MOVBX,TYPENU—MW;
BX=()
(2)MOVAL,LENGTHNUM;
AL=()
(3)
(4)MOVDL,LENGTHNU—MW
;
DL=()
MOVCX,SIZEARRAY—B;
CX=()
4—5设某数据段定义如下:
D—SEG
SEGMENTPA‘RADATA'
ORG30H
DATA1
EQU10H
DATA2
EQUDATAI十20H
VARI
DB10DUP(?
VAR2
DW‘AB'
,2,2000H
CNT
EQU$-VARI
ENDS
试回答:
(1)VARI、VAR2勺偏移量是多少?
(2)符号常量CNT勺
值=?
⑶VAR2+2单元的内容为多少?
4—6代码段中开始勺一段程序有通用性,试将此段定义为一条宏指令。
4—7请定义一条宏指令,它可以实现任一数据块的传送(假设无地址重迭),只要给出源和目标数据块的首地
址以及数据块的长度即可。
4—8下列语句中,那些是无效的汇编语言指令?
并指出无效指令中的错误
(1)MOV
SP,AL
(2)MOV
WOR—DOP[BX+4X3][SI],SP
(3)MOV
VARI,VAR2
(4)MOV
CS,AX
(5)MOV
DS,BP
(6)MOV
SP,SS:
DATA
(7)MOV
AX,[BX—S1)
(8)INC
[BX]
(9)MOV25,[BX]
(10)MOV[8-BX],25
4—9若数组ARRAY在数据段中已作如下定义:
ARR