软考--硬件基础

       几次软考模拟试题做下来,硬件知识错的内容是最多的,其实我们细想一下,如果站在计算机的角度去思考问题的话,这些内容并不复杂。下面让我们用计算机的思维进行一次神奇的探索旅程。

【组成】

      首先简要了解一下我(计算机)都是由哪些部件组成的:
                        软考--硬件基础_第1张图片
        运算器和控制器组成了我的大脑,一个负责计算,一个控制我要不要计算。

        存储器则存储着程序和数据,这些内容是能够实现计算的基础。

        往往我们本身存储的内容非常有限,通过输入输出设备与外界代码与数据交换,实现更好的计算。

        计算机的五大部件:运算器,控制器,存储器和输入输出设备都是我们所熟知的,但当我们只停留在字面含义去理解计算机的工作原理的话,还远远不能理解我真正的执行过程。

【CPU数据处理过程】

                                                    软考--硬件基础_第2张图片

     我的运算过程概括为从内存中取出一条指令,通过控制器进行译码,然后按照指令要求从存储器中取出数据进行运算,最后按地址把结果送回到内存。接下来取第二条指令,依次循环执行上面的操作。

    【译码执行步骤】

      控制器主要包括指令控制逻辑,时序控制逻辑(就像人的一切活动都离不开时间一样,时序就是计算机运行的时间),总线控制逻辑(控制数据的传输),中断控制逻辑(请求CPU要不要进行代码控制)。

     (1)代码输入。数据总线将代码从内存传送至缓冲寄存器再传入到指令寄存器(IR instruction Register)中。

         大家可能有疑问为什么要先进入缓冲寄存器再进入指令寄存器呢?寄存器是在CPU内部的存储单元,控制器访问它里面的数据是最快的,但同样存在一个问题,它的控件非常小。缓冲寄存器扩大了存储空间,解决了直接访问内存速度慢不对等的问题。同时缓冲寄存器将传进来的数据分解后分发给运算器和控制器,保证同步执行。

    (2)指令计数。当数据传入后,控制器通过程序计数器(PC)记录下执行的代码条数和所执行代码的起始地址,以便更加容易的访问接下来的指令。PC的内容存储了指令地址,但程序所在内存地址往往是连续的,所以只需要把PC内容加1即可。因此PC必须具备寄存信息计数两个功能。

    (3)内存地址保存。PC记录了指令地址,但为了防止重新访问内存,必须要记录下内存单元地址。用地址寄存器(AR)记录下访问内存的地址。

    (4)指令译码。IR中的数据要想执行必须先传入指令译码器(ID),对代码进行分析,形成机器代码对硬件操作控制器进行控制信号。

      到此,一条控制指令执行完毕。

     【运算过程】

     (1)运算。数据从数据缓冲器进入算数逻辑单元(ALU)和累加器(AC),完成算数运算和逻辑运算。累加器是算数逻辑单元的工作区。

       计算机计算采用最多的不是二进制原码,而是补码,例如:
                                             软考--硬件基础_第3张图片
    (2)修改状态。运算执行完毕后要判断执行内容是否符合运算规律,通过修改状态条件寄存器(PSW)内容进行验证。
                                            软考--硬件基础_第4张图片

【存储系统】

                               软考--硬件基础_第5张图片

      存储系统根据不同的需求,不同的访问速度将存储器划分为不同的层次,高速缓存存储器处于内存与CPU之间,为解决速度不同步的问题发挥了至关重要的作用,由计算机硬件完成访问过程,而内存由软件和硬件协调访问

【高速缓存】

     但因为cache与内存的构造与存储空间不同,数据地址要想访问时必须有地址转换的方法(地址映像)。以下为三类地址映像方法:

    (1)直接相联映像。主存块和cache中块的对应关系是固定的。
                                               软考--硬件基础_第6张图片
    (2)全相联 映像。允许主存中任何一块可以调入cache的任何一个空间中

                                      软考--硬件基础_第7张图片
    (3)组相联映像。规定组采用直接映像方式而块采用全相连映像方式。
                                                             软考--硬件基础_第8张图片

    对比:直接相联映像地址变换最为简单,但灵活差,最容易造成冲突。全相联映射调入cache位置不受限制,非常灵活,但无法直接获得cache块号,变换复杂,速度慢;组相联映射则取中间值。

      【虚拟存储器】

      虚拟存储技术吧很大的程序分成比较小的块全部存储在辅存当中。运行时,马上把用到程序块调入到高速缓存中,这样实现一边运行程序一边进行程序块的调入调出。该技术主要有页式存储、段式存储和段页式存储,下面以段页式虚拟存储器进行说明。

     段页式存储管理
  
                                            软考--硬件基础_第9张图片
        段页表是把段式存储与页式存储结合的一种存储方式,程序按照逻辑结构分段,每一段再分成大小相同的页,程序的调入调出按页进行,同时又按照段实现保护。

     外部存储器--磁盘存储器
              软考--硬件基础_第10张图片软考--硬件基础_第11张图片
        
       在外存储器的考点当中京城会出一些计算时间或者容量的题目,这时候必须要理清楚几个概念:圆柱面,磁道,扇区,数据块等。

      还有注意二进制的换算单位:1M=1024K(2^10K)   1K=1024B(B是字节Byte)   1B=8bite(bite 位)

【输入输出】

        数据的输入与输出都是伴随着内存的地址来进行的,这时候必须明白一些内存编址和访问地址的方法。
     
        1. 接口与内存编址的方法有:内存与接口地址独立编址,内存与几口地址统一编址。

        采用独立编址方法,内存与接口采用独立的编址空间,这时候程序访问数据的指令将完全不同,在编程和读程序中很容易使用,但接口指令太少,功能太弱。

        采用统一编址方法,内存地址和接口地址在一个统一空间中,但地址一旦划分,就只能让内存或者接口使用。这样内存空间可以完全应用于接口操作功能,但容易导致地址不连续,程序维护困难。

     2. 寻址方式:常见有立即寻址,直接寻址,间接寻址,寄存器寻址,基址加变址寻址等。

     在汇编语言中,代码由操作码和操作数组成,例如:Move Ax,200  move为操作码,其余为操作数,200叫做源操作数,Ax叫做目的操作数。
       
       立即寻址:寻址的对象为立即数。   Mov R1,45  对于45来说是立即操作数,对R1(寄存器)是寄存器寻址。

       直接寻址:寻址对象为内存地址。   Mov R1,[2000] 把内存地址为2000中的内容放到寄存器R1中。源操作数为直接寻址。

       基址加变址:Mov R1,[Si+10H] 

   3. 输入输出方式
                      软考--硬件基础_第12张图片
      (1)直接程序控制是外设输入/输出是在CPU执行程序控制下完成的。但它存在两个缺点:

                1)降低CPU的效率;2)对外部突发事件无法做出实时响应。

      (2)中断方式是I/O系统准备好以后,向CPU发出中断请求信号,CPU无需等待,接到请求信号后保存在执行的现场,转入中断程序。

       中断响应时间是从发出中断请求到进入中断处理程序所经历的时间。

       中断存在优先级,高级别先执行。

      (3)直接存取器存取方式(DMA Direct Memery Access)是由DMA硬件直接完成。在DMA传送过程中无需CPU干涉,这个系统总线完全由DMAC控制总线数据传输。

     (4)输入输出处理机(IOP)应用于大型计算机中,计算机计算速度很高,程序传送,查询会造成很大的系统开销,为提高计算机性能,提出了该方式。它是一个专用处理机,计算机的输入输出操作完全由它控制。

【总结】

        计算机硬件基础在软考中占有很大比重,需要我们在学习中不断总结,反复琢磨基础知识的合理之处,这样,我们在做题中应该可以轻松一些。

     

你可能感兴趣的:(软考,硬件)