zoukankan      html  css  js  c++  java
  • 软考之CPU的寻址方式

        在复习软考的时候,发现CPU的内部工作原理这一部分的内容挺重要的,现对CPU的寻址方式进行了一下总结。以下就来一一介绍一下。

        我们都知道一个指令分为操作码和地址码两部分。操作码确定指令的类型。地址码确定指令所要处理的数据。依据地址码代表的地址类型。指令系统分为例如以下寻址方式:

    1、马上寻址:

    地址码就是操作数,这样的寻址方式不必再次訪问主存去取操作数,当然也无须改动操作数(这样的方式获得操作数的速度最快)

     

    2、直接寻址:

    指令的地址码就是操作数在主存内的地址,也就是说地址码就是主存内数据的绝对地址,不必做不论什么换算(也就是操作数的地址直接包括在指令中,仅仅要依照指令中的地址去找就能够了),但这样的地址方式的不足之处在于寻址范围有限。

     

    3、间接寻址:

    在指令的地址码部分直接给出的既不是操作数(直接给出操作数的是马上寻址),也不是操作数的地址(直接给出操作数地址的是直接寻址),而是操作数的地址的地址。

    这样的方式提高了寻址的灵活性。扩大了寻址的范围。可是因为多次訪问主存。速度大为减少。

     

    4、寄存器寻址:

    地址码的地址是寄存器的地址,和内存地址而言。訪问寄存器的速度是很快的,所以使用寄存器寻址有很快的速度。不足之处在于寄存器的数量有限。

     

    5、寄存器间接寻址:

    地址码保存的是寄存器的地址,相相应的寄存器中保存的是操作数在主存中的地址。这样既快又有灵活性,是一种广泛使用的寻址方式。

     

    6、基址寻址:

    採用专用寄存器或通用寄存器作为基址寄存器,主要作用是扩大寻址空间和再定位。

     

    7、变址寻址:

    是将地址码和变址寄存器内容相加后形成的数据地址,对数组运算、字符串操作等批量数据的处理很有效。

     

    8、页面寻址:

    页面寻址要将主存分组成若干个区。寻址时使用区码加区内偏移的方式确定位置。

     

    9、相对寻址:

    相对寻址和变址寻址类似,这里变址寄存器变成了程序计数器,也就是在相对寻址中是将地址码和程序计数器内容相加后形成的数据地址。

     

        CPU中的几种寻址方式就介绍到这里,本着总结的原则,目的是为了让大家了解一下各种寻址方式的原理。方便掌握。

  • 相关阅读:
    线段树题胡乱整理
    【テンプレート】RMQ
    【説明する】线段树
    【テンプレート】字符串hash
    [HDOJ3718]Similarity(KM算法,二分图最大匹配)
    [HDOJ3714]Error Curves(三分)
    [HDOJ3711]Binary Number(枚举)
    [HDOJ3709]Balanced Number(数位dp)
    [HDOJ5542]The Battle of Chibi(DP,树状数组)
    [HDOJ5543]Pick The Sticks(DP,01背包)
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/5069479.html
Copyright © 2011-2022 走看看