MOV AL,DL MOV SI,BX JMP NEXT2 NEXT1: CMP AH,DL JGE NEXT2 MOV AH,DL MOV DI,BX NEXT2: INC BX LOOP LOP MOV MAX, AH MOV MAXADD, DI MOV MIN, AL MOV MINADD, SI MOV AH,4CH INT 21H END START
21. 编写子程序实现两个多字节压缩BCD码相减。 ; 子程序名:MBINSUB
; 功能:将两个多字节压缩BCD码相减
; 入口参数:SI,DI分别指向被减数、减数的首地址,BX指向差的首地址, ; CX中存放多字节的长度 ; 出口参数:BX指向差的首地址 MBINSUB PROC NEAR/FAR PUSH AX PUSH BX CLC
LP: MOV AL,[SI] SBB AL,[DI] DAS
MOV [BX],AL INC SI INC DI INC BX LOOP LP POP BX POP AX RET
MBINSUB ENDP
22. 编写子程序实现把键盘输入任意组合的8位0、1字符转换为等值的二进制数,送数据段BIN1字节单元。 ; 子程序名:ASC8BIN
; 入口参数:DX指向输入缓冲区的首地址(使用0AH号DOS功能接受键盘输入字符串), ; 出口参数:BIN1 ASC8BIN PROC NEAR/FAR PUSH AX PUSH BX PUSH CX MOV BX, DX ADD BX, 2 MOV CX, 8 MOV AH,0AH INT 21H
XOR AH,AH LOP: MOV AL, [BX] AND AL,1 ADD AH,AL SHL AH,1 INC BX LOOP LOP MOV BIN1, AH POP CX POP BX POP AX RET
ASC8BIN ENDP 计算题
第82~84页的第1、3、4、6、8、18、22、27、28题;
1. 设机器数长为8 位(含1 位符号位在内),写出对应下列各真值的原码、补码和反码。 -13/64 , 29/128 , 100 ,-87 答:
数字 编码 原码 补码 反码 -13/64 29/128 100 -87
3. 己知[X] 补,求[X] 原和X . 答:
[X] 补 1.1100 1.1001 0.1110 1.0000 1,0101 1,1100 0,0111 1,0000
1.0011010 0.0011101 0,1100100 1,1010111 1.1100110 0.0011101 0,1100100 1,0101001 1.1100101 0.0011101 0,1100100 0,0101000 [X] 原 1.0100 1.0111 0.1110 1.0000 1,1011 1,0100 0,0111 1,0000 X -4/16 -7/16 14/16 -0 -11 -4 7 -16 4. 当十六进制数9B 和FF 分别表示为原码、补码、反码、移码和无符号数时,所对应的十进制数各为多少(设机器数采用一位符号位)。 答:
数字 编码 原码 补码 反码 移码 无符号数 9B 对应十进数 FF 1,001 1011 -27 1,111 1111 1,001 1011 原码1,1100101B=-101D 1,111 1111 1,001 1011 原码1,1100100B=-100D 1,111 1111 1,001 1011 原码0,0011011B=27D 1,111 1111 1,001 1011 155D 1,111 1111 对应十进数
-127D 原码1,0000001=-1D 原码1,0000000=-0D 原码0,1111111=127D 255D 6. 将下列十进制数表示成IEEE754 标准的32 位浮点规格化数。 (1) 27/64 (2) – 27/64 解:27/64=0.011011=1.1011*2
(1) 0 01111101 10110000000000000000000 (2) 1 01111101 10110000000000000000000
8.已知x 和y,用变形补码计算x-y,同时指出运算结果是否溢出。 (1)x=0.11011 y=-0.11111 (2)x=0.10111 y=0.11011 (3)x=0.11011 y=-0.10011 解:(1)x = 0.11011 y = -0.11111
[x]补= 0 0. 1 1 0 1 1 [-y]补= + 0 0. 1 1 1 1 1 0 1. 1 1 0 1 0 溢出
(2)x = 0.10111 y = 0.11011
[x]补= 0 0. 1 0 1 1 1 [-y]补= + 1 1. 0 0 1 0 1 1 1. 1 1 1 0 0
18. 已知两个无符号二进制数:X=1001,Y=1101 ,用原码一位乘法完成X × Y。 解:
X=1001,Y=1101 B:1001 被乘数 累加1 +B 移位1 累加2 +0 移位2 累加3 +B 移位3 累加4 +B 移位4
22.设阶码3 位,尾数6 位,按浮点运算方法,完成下列取值的[x+y],[x-y]运算。 (1)x = 2-011 × 0.100101 y = 2-010 ×(- 0.011110) (2)x = 2-101 ×(-0.010110) y = 2-100 × (0.010110)
解:设两数均以补码表示,阶码采用双符号位,尾数采用单符号位,则它们的浮点表示分别为: 题(1) [x]浮=11, 101;0.100101 [y]浮=11,110;1.100010 (1)求阶差并对阶
ΔE=Ex-Ey=[Ex]补-[Ey]补=[Ex]补+[-Ey]补=11,101 + 00,010 =11,111 即ΔE 为-1,x 阶码小,应使Mx 右移1 位,Ex 加1
A: 0000 0000 1001 1001 0100 0000 0100 0010 1001 1011 0101 1001 1110 0111 C:1101 乘数 1101 C0=1 1110C0=0 0111C0=1 1011C0=1 0101(结果) -2
[x]浮=11,110;0.010010(1) (2)尾数求和 0.010010(1) + 1.100010 1.110100(1) (3)规格化
可见尾数运算结果的符号位与最高位相同,应执行左规格化处理,每左移尾数一次, 相应阶码减1,所以结果尾数为1.010010,阶码为11,100 (4)舍入处理对本题不需要。 (5)判溢出
阶码两符号位为11,不溢出,故最后结果为 [x]浮+[y]浮=11,100;1.010010 真值为2-100*(-0.101110) (2)尾数求差 0.010010(1) + 0.011110 0.110000(1)
[x]浮-[y]浮=11,100;0.110001 真值为2-100*0.110001
题(2) [x]浮=11,011;1.101010 [y]浮=11,100;0.010110 (1)求阶差并对阶
ΔE=Ex-Ey=[Ex]补-[Ey]补=[Ex]补+[-Ey]补=11,011 + 00,100 =11,111 即ΔE 为-1,x 阶码小,应使Mx 右移1 位,Ex 加1 [x]浮=11,100;1.110101(0) (2)尾数求和 1.110101(0) + 0.010110 0.001011(0) (3)规格化
可见尾数运算结果的符号位与最高位相同,应执行左规格化处理,每左移尾数一次, 相应阶码减1,所以结果尾数为0.101100,阶码为11,010 (4)舍入处理对本题不需要。 (5)判溢出
阶码两符号位为11,不溢出,故最后结果为 [x]浮+[y]浮=11,010;0.101100 真值为2-110*(0.101100)
第118页的第12题;
18.根据“表3.17”写出控制信号MDOUT的逻辑表达式及逻辑图。
答:首先从教材“表3.17”中找出控制信号MDOUT的出现位臵。控制信号MDOUT在表中共有两次出现,一次是在取指周期FT的T3节拍,取每一条指令都出现。另一次是在执行周期ET的T0节拍,执行LOAD指令时出现。然后将这两次出现写成与或逻辑表达式如下: MDOUT=FT〃T3+ET〃T0〃LOAD
这是一个比较简单的逻辑表达式,最后根据这个表达式画出逻辑图如下:
第308~309页的12、13、18、19、21、22题;
12. 某机字长32位,其存储容量为4MB,若按字编址,它的寻址范围是多少? 解: 0~1M
13. 设有一个具有24位地址和8位字长的存储器,问: (1) 该存储器能够存储多少字节的信息?
(2) 如果存储器由4M×1位的RAM芯片组成,需要多少片? (3) 需要多少位作芯片选择?
解:(1) 存储单元数为2=16M单元,每个单元为8位字长,即一个字节,所以能存储 16M=16777216个字节的信息。
(2) 由于存储容量为16MB,每4M字节需要8片,故所需芯片数量为16/4×8=32片。
(3) 4M×1位的RAM芯片需要22位地址线,所以,可以把地址线的低22位直接连接到芯片的A0—A21管脚,而A22和A23则通过2:4线译码器进行芯片选择。
18. 某DRAM芯片内部的存储单元为128×128结构。该芯片每隔2ms必须刷新一次,且刷新是通过顺序对所有128行的存储单元进行内部读操作和写操作实现的。设存储器周期为500ns。求其刷新的开销(即2ms时间内进行刷新操作的时间所占的百分比)。
解:每刷新一行需要进行一次读操作和一次写操作,共2个存储器周期,故每行的刷新时间为500ns×2=1μs。在2ms内时间内需进行128次刷新,需时128μs,故刷新开销为: 128μs/2ms=6.4%
19. 某SRAM芯片有17位地址线和4位数据线,用这种芯片为32位字长的处理器构成1M×32位的存储器,并采用模块板结构。问: (1) 若每个模块板为256K×32位,共需要几块板? (2) 每块板内共需要多少片这样的芯片? (3) 所构成的存储器需要多少片这样的芯片? (4) 共需要多少位地址线,各完成什么功能? 解:(1) 1M=1024K,共需要模块板1024/256=4块
(2) 该芯片为217×4位=128K×4位,故每块板内需要芯片(256/128)×(32/4)=16片 (3) 构成该存储器共需要4×16=64片芯片
(4) 所构成的存储器总容量为1M×32位=4MB=2字节,故需要22位地址线。在每个模块内,首先用每两片位并联的方式构成128K×8位的空间,芯片内部需要17位地址线。然后用两组这样的存储空间通过地址串联构成256K×8位的存储体,4个存储体通过位并联构成一个模块板。共有4块模块板。
地址线可以这样分配:A0—A16用于连接所有存储芯片内部地址线,A17用于从各个存储体内两组存储空间中选择一组(每组用2片芯片通过位并联方式组成,为8位,一个字节),A18和A19通过2:4译码器选择各个模块板内4个存储体中的一个,而A20和A21通过2:4译码器选择4个模块板中的一块。
第344页的第41题;
41.在一个16位的总线系统中,若时钟频率为100MHz,总线周期为5个时钟周期传输一个字。试计算总线的数据传输率。 解:该总线的时钟周期:1/100=0.01μs 总线周期:0.01μs×5=0.05μs
故数据传输率为16b/ 0.05μs=320×10bps=40×10Bps
第364页第12题
12.设某光栅扫描显示器的分辨率为1024×768,帧频为50(逐行扫描),回扫和水平回扫时间忽略不计,则此显示器的行频是多少?每一像素允许读出时间是多少? 解:行频为:768行×50/s=38400行/s;
每一像素允许读出时间为:1/(38400×1024)≈0.0254(μs)
6
6
22
24
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库2011汇编复习 大题部分(5)在线全文阅读。
相关推荐: