姚李洋吧 关注:97贴子:3,360
  • 5回复贴,共1
16. 某机主存容量为4M´16位,且存储字长等于指令字长,若该机指令系统可完成108种操作,操作码位数固定,且具有直接、间接、变址、基址、相对、立即等六种寻址方式,试回答:(1)画出一地址指令格式并指出各字段的作用;
(2)该指令直接寻址的最大范围;
(3)一次间址和多次间址的寻址范围;
(4)立即数的范围(十进制表示);
(5)相对寻址的位移量(十进制表示);
(6)上述六种寻址方式的指令哪一种执行时间最短?哪一种最长?为什么?哪一种便于程序浮动?哪一种最适合处理数组问题?
(7)如何修改指令格式,使指令的寻址范围可扩大到4M?
(8)为使一条转移指令能转移到主存的任一位置,可采取什么措施?简要说明之。
解:(1)单字长一地址指令格式:
OP(7位) M(3位) A(6位)
OP为操作码字段,共7位,可反映108种操作;
M为寻址方式字段,共3位,可反映6种寻址操作;
A为地址码字段,共16-7-3=6位。
(2)直接寻址的最大范围为26=64。
(3)由于存储字长为16位,故一次间址的寻址范围为216;若多次间址,需用存储字的最高位来区别是否继续间接寻址,故寻址范围为215。
(4)立即数的范围为-32——31(有符号数),或0——63(无符号数)。
(5)相对寻址的位移量为-32——31。
(6)上述六种寻址方式中,因立即数由指令直接给出,故立即寻址的指令执行时间最短。间接寻址在指令的执行阶段要多次访存(一次间接寻址要两次访存,多次间接寻址要多次访存),故执行时间最长。变址寻址由于变址寄存器的内容由用户给定,而且在程序的执行过程中允许用户修改,而其形式地址始终不变,故变址寻址的指令便于用户编制处理数组问题的程序。相对寻址操作数的有效地址只与当前指令地址相差一定的位移量,与直接寻址相比,更有利于程序浮动。
(7)方案一:为使指令寻址范围可扩大到4M,需要有效地址22位,此时可将单字长一地址指令的格式改为双字长,如下图示:
OP(7位) MOD(3位) A(高6位)
A(低16位)
方案二:如果仍采用单字长指令(16位)格式,为使指令寻址范围扩大到4M,可通过段寻址方案实现。安排如下:
硬件设段寄存器DS(16位),用来存放段地址。在完成指令寻址方式所规定的寻址操作后,得有效地址EA(6位),再由硬件自动完成段寻址,最后得22位物理地址。 即:物理地址=(DS)´26 + EA
注:段寻址方式由硬件隐含实现。在编程指定的寻址过程完成、EA产生之后由硬件自动完成,对用户是透明的。
方案三:在采用单字长指令(16位)格式时,还可通过页面寻址方案使指令寻址范围扩大到4M。安排如下:
硬件设页面寄存器PR(16位),用来存放页面地址。指令寻址方式中增设页面寻址。当需要使指令寻址范围扩大到4M时,编程选择页面寻址方式,则:EA =(PR)‖A (有效地址=页面地址“拼接”6位形式地址),这样得到22位有效地址。
(8)为使一条转移指令能转移到主存的任一位置,寻址范围须达到4M,除了采用(7) 方案一中的双字长一地址指令的格式外,还可配置22位的基址寄存器或22位的变址寄存器,使EA = (BR) + A (BR为22位的基址寄存器)或EA =(IX)+ A(IX为22位的变址寄存器),便可访问4M存储空间。还可以通过16位的基址寄存器左移6位再和形式地址A相加,也可达到同样的效果。
总之,不论采取何种方式,最终得到的实际地址应是22位。


1楼2014-01-10 07:00回复
    38. 磁盘组有6片磁盘,最外两侧盘面可以记录,存储区域内径550px,外径825px,道密度为40道/cm,内层密度为400位/cm,转速3600转/分,问:
    (1)共有多少存储面可用?
    (2)共有多少柱面?
    (3)盘组总存储容量是多少?
    (4)数据传输率是多少?
    解:(1)共有:6×2=12个存储面可用。
    (2)有效存储区域=(33-22)/ 2 = 137.5px
    柱面数 = 40道/cm × 5.5= 220道
    (3)内层道周长=p×22=1727px
    道容量=400位/cm×1727px= 3454B
    面容量=3454B×220道=759,880B
    盘组总容量=759,880B ×12面= 9,118,560B
    (4)转速 = 3600转 / 60秒 = 60转/秒
    数据传输率 = 3454B × 60转/秒 = 207,240 B/S


    2楼2014-01-10 07:01
    回复
      39. 某磁盘存储器转速为3000转/分,共有4个记录盘面,每毫米5道,每道记录信息12 288字节,最小磁道直径为230mm,共有275道,求:
      (1)磁盘存储器的存储容量。
      (2)最高位密度(最小磁道的位密度)和最低位密度。
      (3)磁盘数据传输率。
      (4)平均等待时间。
      解:(1)存储容量 = 275道×12 288B/道×4面 = 13 516 800B
      (2)最高位密度 = 12 288B/(p×230)= 17B/mm = 136位/mm(向下取整)
      最大磁道直径=230mm+2×275道/(5道/mm) = 230mm + 110mm = 340mm
      最低位密度 = 12 288B /(p×340)= 11B/mm = 92位 / mm (向下取整)
      (3)磁盘数据传输率= 12 288B × 3000转/分=12 288B × 50转/秒=614 400B/s
      (4)平均等待时间 = 1s/50 / 2 = 10ms


      3楼2014-01-10 07:01
      回复


        IP属地:陕西来自Android客户端4楼2014-01-12 09:52
        收起回复