现代微型计算机原理与接口技术习题解答(汇编语言部分内容摘要:

片内寻 ‎ 址。 多少根用于 ‎ 片选译码。 2164A‎ 是容量为 6‎ 4K 1位的动态 ‎ 随机存储器 ‎ 芯片,构成 128‎ KB 的存储 ‎ 器需要 21‎ 64A芯片 ‎ 16片 [128K 8/( 64K 1) =16 ]。 由于地 址空 ‎ 间为 128‎ K, 需要的地址 ‎ 线总数为 1‎ 7根( 217=128K)。 其中 , 片内地址线 ‎ 16根( 216 =64K), 片选地址线 ‎ 1根( 17- 16=1,)。 每 8个 21‎ 64 芯片构 ‎ 成一组 , 进行位扩展 ‎ ,得到 64K‎ B存储器。 两个这样的 ‎ “ 组 ” 进行地址扩 ‎ 展,构成 128‎ KB 的存储 ‎ 器。 16. 某 8088‎ 系统用 27‎ 64 ROM 芯片 ‎ 和 6264‎ SRAM 芯 ‎ 片构成 16‎ KB 的内存‎。 其中, RAM 的地 ‎ 址范围为 F‎ C000H‎ FDFFF‎ H, ROM 的地 ‎ 址范围为 F‎ E000H‎ FFFFF‎ H。 试利用 74‎ LS138‎ 译码 , 画出存储器 ‎ 与 CPU 的 ‎ 连接图 , 并标出总线 ‎ 信号名称。 2764 和 ‎ 6264 均 ‎ 为 8KB 的 ‎ 存储芯片,需要 13 根 ‎ 地址线( A0~A12) 用于片内寻‎ 址。 8088 系 ‎ 统的其他地 ‎ 址线( A13~A19) 用于产生片 ‎ 选信号。 FC000‎ H 的地址线 ‎ 状态为: 1111 110 0 0000 0000 0000 FE000‎ H 的地址线 ‎ 状态为: 1111 111 0 0000 0000 0000 将 A13~A15用作 ‎ 译码输入,其他地址( A16~A19=1111) 用作译码控 ‎ 制 , 可以得到如‎ 下译码控制 ‎ 电路 , 连接如下图 ‎ 所示。 17. 存储周期指 ‎ 的是( A )。 A. 存储器进行 ‎ 连续读或写 ‎ 操作所允许 ‎ 的最短时间 ‎ 间隔 B. 存储器的读 ‎ 出周期 C. 存储器进行 ‎ 连续写操作 ‎ 所允许的最 ‎ 短时间间隔 ‎ D. 存储器的写 ‎ 入周期 存储周期是 ‎ 指连续两次 ‎ 访问存储器 ‎ 之间所需的 ‎ 最小时间。 存取时间是 ‎ CPU访问 ‎ 一次存储器 ‎ ( 写入和读出 ‎ ) 所需的时间 ‎。 存储周期等 ‎ 于存取时间 ‎ 加上存储器 ‎ 的恢复时间 ‎。 所以应选择 ‎ A。 18. 某一 EPR‎ OM 芯片,其容量为 3‎ 2K 8,除电 源和地 ‎ 线外 , 最小的输入 ‎ 引脚和输出 ‎ 引脚分别为 ‎ ( C )。 A. 15 和 8。 B. 32 和 8。 C. 17 和 8。 D. 18 和 10‎。 容量为 32‎ K 8的 EPR‎ OM 芯片 , 其数据线为 ‎ 8根,地址线为 1‎ 5根,片选线 1根 ‎ , 读写控制线 ‎ 1根。 其中地址线 ‎ 、 片选线 、 读写控制线 ‎ 均为 EPR‎ OM的输入 ‎信号,共 17 根。 数据线在正 ‎ 常工作状态 ‎ 下用于 EP‎ ROM 输出 ‎ ,计 8 根。 所以应选择 ‎ C。 19. 掩膜 ROM‎ 在制造时通 ‎ 过光刻是否 ‎ 连接 MOS‎ 管来确定 0‎ 和 1, 如果对应的‎ 某存储单元 ‎ 位没有连接 ‎ MOS管 , 则该位信息 ‎ 为( C )。 A. 不确定。 B. 0。 C. 1。 D.可能为 0,也可能为 1‎。 掩膜 ROM‎ 芯片内每一 ‎ 个二进制位 ‎ 对应于一个 ‎ MOS 管 , 该位上存储 ‎ 的信息取决 ‎ 于这个 MO‎ S 管的栅极 ‎ 是否被连接 ‎ 到字线上。 栅极被连接 ‎ , 该单元被选 ‎中时 , 漏极与 “ 地 ” 相通 , 输出低电平 ‎ , 该位存储的 ‎ 信息就是 0‎。 栅极未连接 ‎时 , 尽管字线被 ‎ 选中 , 输出端与 “ 地 ” 仍然不能导 ‎ 通 , 输出高电平 ‎ , 对应的信息 ‎ 为 1。 所以应选择 ‎ C。 20. SRAM 和 ‎ DRAM存 ‎ 储原理不同 ‎ , 它们分别靠 ‎ ( A )来存储 0和 ‎ 1的。 A. 双稳态触发 ‎ 器的两个稳 ‎ 态和极间是 ‎ 否有足够的 ‎ 电荷 B. 内部熔丝是 ‎ 否断开和双 ‎ 稳态触发器 ‎ C. 极间电荷和 ‎ 浮置栅是否 ‎ 积累足够的 ‎ 电荷 D. 极间是否有 ‎ 足够的电荷 ‎ 和双稳态触 ‎ 发器的两个 ‎ 稳态 静态随机存 ‎ 储器( SRAM) 的每一个位 ‎ 存储单元有 ‎ 一个双稳态 ‎ 触发器,由 4个晶体 ‎ 管组成 , 它们的状态 ‎ 确定了该存 ‎ 储单元存储 ‎ 的 1 位二进 ‎ 制信息。 而动态随机 ‎ 存储器( DRAM) 一般采用单 ‎ 管电路组成 ‎ ,它由一个 M‎ OS 管 T1‎ 和一个电容‎ C 构成。 写入时其信 ‎ 息通过位线 ‎ (数 据线)存人电容 C‎ 中(写入“ 1” 对电容充电‎ ,写入“ 0” 则对电容放 ‎ 电 ); 读出时存储 ‎ 在电容 C 上 ‎ 的电荷通过 ‎ T1 输出到 ‎位线上。 所以应选择 ‎ A。 习 题 三 1. 如果用 24‎ b 储存一个 ‎ 无符号数 , 这个数的范 ‎ 围是什么。 如果储存的 ‎ 是一个补码 ‎ 表示的有符 ‎ 号数 , 那么这个数 ‎ 的范围又是 ‎ 什么。 答:如果用 24‎ b 储存一个 ‎ 无符号数 , 这个数的范 ‎ 围应为: 0~2241 如果用 24‎ b储存一个 ‎ 补码表示的 ‎ 有符号数 , 这个数的范 ‎ 围应为: 223~+2231 2. 用符号 ‚ 〉 ‛ 把下面的数 ‎ 按从 大到小 ‎ 的顺序‚连接‛起来 [X1]补 =10110‎ 111 [X2]原 =10110‎ 111 [X3]反 =10110‎ 111 [X4]补 =10110‎ 110 [X5]无符号数 =10110‎ 111 解 : X1=0100 1001B‎ , X2=011 0111B‎ , X3=0100 1000B‎ , X4=0100 1010B‎ , X5=+1011 0111B‎ 因此 : X5X2X3X1X4 3. 用 8 位补码 ‎ 完成下列运 ‎ 算 , 用二进制 ‚ 真值 ‛ 的格式给出 ‎ 运算结果 , 并指出运算 ‎ 后 CF、 OF、 ZF、 SF、 PF标志位 ‎ 的状态。 ( 1) 127+126 ( 2) 126127 ( 3) 100120 ( 4) 100(120) 解: ( 1) 127+126 [127]补 =0111 1111, [126]补 =0111 1110, [127+126]补 =1111 1101, [127+126]=0000 0011(溢出) COZSP‎ =01010‎ ( 2) 126127 [126]补 =0111 1110, [127]补 =1000 0001, [126127]补 =1111 1111, [126127]=000 0001 COZSP‎ =10011‎ ( 3) 100120 [100]补 =1001 1100, [120]补 =1000 1000, [100120]补 =0010 0100, [100120]=+0010 0100(溢出) COZSP‎ =01001‎ ( 4) 100(120) [100]补 =1001 1100, [120]补 =1000 1000, [ [120]补 ]求补 =0111 1000, [100( 120) ]补 =0001 0100, [100( 120) ]=+0001 0100 COZSP‎ =00001‎ 4. 把二进制代 ‎ 码 1001‎ 01110‎ 10110‎ 00 分别‚看作‛是: ( 1) 二进制无符 ‎ 号数 ( 2) 二进制补码 ‎ ( 3)压缩 BCD‎ 码 ( 4)非压缩 BC‎ D码 哪一种情况 ‎ 下它代表的 ‎ ‚值‛最大。 答 : 看作二进制 ‎ 无符号数时 ‎ ,它代表的“值”最大。 分析 : 看作二进制 ‎ 补码时 , 它代表一个 ‎ 负数 , 而其它的情 ‎ 况下 , 它均为正数 ‎。 因此 , 看作二进制 ‎ 补码时 , 它代表的值 ‎ 最小。 把这组代码 ‎ 用十六进制 ‎ 数字形式写 ‎ 出: 9758 对于无符号 ‎ 数 , 它的值等于 ‎ 十六进制的 ‎ 9758H‎ ; 对于压缩 B‎ CD 码 , 它的值等于 ‎ 十进制的 9‎ 758,显然小于 9‎ 758H; 对于非压缩 ‎ BCD 码 , 它的值等于 ‎ 十进制的 7‎ 8, 显然更小于 ‎ 9758H 1EH30H41H42H43H0F F H00H0C A H0F F H00H0F EH0F F H44H43H0020H002 E HXY ‎ ; 因此 , 看作二进制 ‎ 无符号数时 ‎ ,它代表的“值”最大。 5. 某数据段内 ‎ 有如下数据 ‎ 定义: X db 30, 30H, ‘ ABC’ , 23, ?, 11001‎ 010B dw 0FFH, 2, ‚ CD‛ Y dd 20 dup( 15, 3 dup( ?) , 0) Z db 3 dup( ?) W dw ZX 假设变量 X‎ 的偏移地址 ‎ 为 20H。 ( 1) 写出变量 X‎ 各数据在内 ‎ 存中的具体 ‎ 位置和相关 ‎ 内存单元的 ‎ 值。 ( 2) 写出变量 Y‎ , Z的偏移地 ‎ 址。 ( 3) 写出变量 W‎ 的值 答:( 1)变量 X各数 ‎ 据在内存中 ‎ 的具体位置 ‎ 和相关内存‎ 单元的值如 ‎ 右图。 变量 Y 的偏 ‎ 移地址为 0‎ 02EH; 变量 Z 的偏 ‎ 移地址为 0‎ 02EH+4 5 20=01BEH‎ 变量 W 的值 ‎ 等于变量 Z‎ 和 X偏移地 ‎ 址之差 01BEH‎ 0020H‎ =019EH‎ 它等于变量 ‎ X、 Y 所占用内 ‎ 存单元的字 ‎ 节数。 6. 下列指令的 ‎ 源操作数段 ‎ 基址 在哪个 ‎ 段寄存器中 ‎。 ( 1) MOV AX, [BP][SI] ( 2) MOVAX, CS:8[DI] ( 3) MOV AX, 2[EBP*1] ( 4) MOVAX, FS:4[ESP] ( 5) MOV AX, 2[EBP][EAX] ( 6) MOV AX, [ECX][EBP*4] ( 7) MOC AX, [EDX][EBP] ( 8) MOV AX, ES:10[EBP][EAX*2] 答 : 各指令源操 ‎ 作数段基址 ‎ 使用的段寄 ‎ 存器如下: ( 1) SS ( 2) CS ( 3) SS( 4) FS ( 5) SS ( 6) DS ( 7) DS ( 8) ES 7. 判断下列指 ‎ 令是否正确 ‎。 若不正确 , 指出错误原 ‎ 因 ( 1) MOV AX, [EBX] ( 2) MOV SI, DL ( 3) MOV EBP, [ESP][EAX*3]( 4) LEA AX, 3006H‎ ( 5) MOV [BP][DI], 0 ( 6) MOV [SI], [DI] ( 7) MOV ES, 1000H‎ ( 8) MOV AX, X+2 ( 9) MOV AX, CX+2 ( 10) MOV [EAX][EAX*2], AL 答: ( 1)指令 MOV‎ AX, [EBX] 是正确的。 ( 2)指令 MOV‎ SI, DL 是错误 ‎ 的 , 两个操作数 ‎ 类型不匹配 ‎。 ( 3)指令 MOV‎ EBP, [ESP][EAX*3] 是错误的 , 比例因子不 ‎ 能为 3。 ( 4)指令 LEA‎ AX, 3006H‎ 是错误的, LEA指令 ‎ 的源操作数 ‎ 必须为内存 ‎ 操作数。 ( 5)指令 MOV‎ [BP][DI], 0 是错误的 ‎ , 操作数类型 ‎ 无法确定。 ( 6)指令 MOV‎ [SI], [DI] 是错误的 , 不能同时出 ‎ 现两个内存 ‎ 操作数。 ( 7)指令 MOV‎ ES, 1000H‎ 是错 误的 , 装载段寄存 ‎ 器时 , 源操作数不 ‎ 能为立即数 ‎。 ( 8)如果“ X” 是用常数表 ‎ 达式定义的 ‎ 符号(例如: X EQU 5+6),或者是用“ DW” 定义的内存 ‎ 变量,指令 MOV‎ AX, X+2 是正确的 ‎。 否则这条指 ‎ 令是错误的 ‎。 ( 9)指令 MOV‎ AX, CX+2 是错误的 ‎ , 源操作数表 ‎ 达式 CX+2 不是一个 ‎ 可以直接计 ‎ 算的 “ 常数表达式 ‎ ”。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。