zoukankan      html  css  js  c++  java
  • 撕破CPU的伪装(一)

        计算机最重要的核心是CPU,这一点毋庸置疑,它就像是整个计算机系统的CEO一样,控制着计算机的运行。但是,归根到底,你会发现,原来CPU仅仅是将数据读出来,进行一下运算,将结果存起来三种操作而已。

        但是CPU是如何从存储器中读出数据呢?这就需要我们队CPU的内部结构有一个了解。


     

    上面的两张图分别是对CPU工作方式的两种不同理解,相信只要你学计算机,那么你都会有自己的看法,这里我们不在讨论。

     

        回到我们的正题,继续CPU的寻址之路。首先把我们把各种寻址方式的具体细节分析一下:

     

    a)隐含寻址;


     

    b)立即寻址;


     

    c)直接寻址;


     

    d)间接寻址;

     

    e)寄存器寻址;

    f)寄存器间接寻址;

     

    g)偏移寻址;

     

     

    h)堆栈寻址。


     

        了解了各种不同的寻址方式之后,我们来分析一下这些寻址方式:


    方式

    算法

    主要优点

    主要缺点

    隐含寻址

    操作数在专用寄存器

    无存储器访问

    数据范围有限

    立即寻址

    操作数=A

    无存储器访问

    操作数幅值有限

    直接寻址

    EA=A

    简单

    地址范围有限

    间接寻址

    EA=(A)

    大的寻址范围

    多重存储器访问

    寄存器寻址

    EA=R

    无存储器访问

    地址范围有限

    寄存器间接寻址

    EA=(R)

    大的地址范围

    额外存储器访问

    偏移寻址

    EA=A+(R)

    灵活

    复杂

    段寻址

    EA=A+(R)

    灵活

    复杂

    堆栈寻址

    EA=栈顶

    无存储器访问

    应用有限

     

        明白了这些寻址方式之后,我们下次再来具体了解一下,CPU中执行不同指令的过程中都涉及了哪些寻址方式,这些指令中的寻址方式又有哪些异同!敬请期待!

     

    谢谢关注!



  • 相关阅读:
    JS === 飞机吐子弹
    React === 几个小问题
    CSS === P标签加了定位,里面文字的问题
    css边框的一些属性
    Spring整合quart初识
    Jenkins部署报weblogic.deploy.api.tools.deployer.DeployerException: Java heap space
    js跳转新窗口
    Idea中运行项目时出现:未结束的字符串解决方案
    Idea中类上有叉的解决方法
    清除eclipse,STS workspace历史记录
  • 原文地址:https://www.cnblogs.com/zs234/p/3233378.html
Copyright © 2011-2022 走看看