zoukankan      html  css  js  c++  java
  • 指令系统中的寻址范围总结

    1.首先区分寻址范围与寻址空间

    寻址范围:是一个数字范围,无单位;

    寻址空间:能够寻址的最大容量;

    例题:

    设有一个1MB容量的存储器,字长32位,问:按字节编址,字编址的寻址范围以及各自的寻址范围大小? 

         如果按字节编址,则 

                         1MB = 2^20B         2^20B/1B = 2^20 

         地址范围为0~(2^20)-1,也就是说需要二十根地址线才能完成对1MB空间的编码,所以地址寄存器为20位,寻址范围大小为2^20=1M

         如果按字编址,则

                          1MB=2^20B      1字=32bit=4B

    (注意:字长是32位,就是指1字=32bit,该信息只有在按字编址时才有用。这里的字长说的是存储字长)

                         2^20B/4B = 2^18   

          地址范围为0~2^18-1,也就是说我们至少要用18根地址线才能完成对1MB空间的编码。因此按字编址的寻址范围是2^18

    寻址方法:

    寻址范围:

    立即寻址:直接放一个数

    直接寻址:A的字长

    间接寻址:存储字长=?(机器字长)

    相对寻址:(PC附近)A的字长

    基址寻址:

    变址寻址:机器字长=存储字长

    注意:

    机器字长:CPU一次能处理数据的位数,通常与CPU的寄存器位数有关。
    存储字长:存储器中一个存储单元(存储地址)所存储的二进制代码的位数,即存储器中的MDR的位数。
    指令字长:计算机指令字的位数。
    数据字长:计算机数据存储所占用的位数。

    通常早期计算机:存储字长 = 指令字长 = 数据字长。所以访问一次可取一条指令或一个数据

    随着计算机应用范围的不断扩大,三者可能各不相同,但它们必须是字节的整数倍。

  • 相关阅读:
    App案例分析——XBMC
    四则运算题目生成程序(基于控制台)
    第一次结对编程
    第二次作业--摩拜单车
    第0次作业
    团队编程作业1-团队展示与选题
    结对编程1-模块化
    APP案例分析
    第1次作业
    第0道作业
  • 原文地址:https://www.cnblogs.com/zq-dmhy/p/11917051.html
Copyright © 2011-2022 走看看