久久成人国产精品一区二区,在线观看成人网站,精品久久久久久成人AV,国产成人无码免费网站

電子開發網

電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 電子開發網 >> 基礎入門 >> 半導體技術 >> 正文

CPU執行程序的原理(簡化過程)

作者:佚名    文章來源:本站原創    點擊數:    更新時間:2018/10/27

前言

看了網上的一些描述CPU執行程序的過程,發現他們涉及到的內容太多了,恨不能把整個CPU的底層結構都拿出來說,這對計算機理論知識匱乏的新人甚至是一些老人都是非常不友好的。這個問題也是當初攔在我面前的一只大老虎,把這個原理寫出來也有助于我自己的深入理解。

YouTube上的一個視頻How does CPU execute program,是一個很好的CPU執行程序原理的總結,英文水平還行的人建議看原視頻,就不用聽我瞎BB了。雖然沒有字幕,如果能看懂里面的PPT,就基本能理解了。

以下內容主要是將視頻內容大致解釋一下,是寫給英文水平欠缺一點或者沒辦法看原視頻的人看的。如有錯誤,歡迎指正。

相關術語

RAM:指內存,斷電后內容無法保存,因此叫做易失性存儲;另一個相關的概念是ROM,一般指外存,例如硬盤。RAM的速度遠快于ROM,CPU與內存直接進行數據交換。

CPU:計算機的所有計算操作都由它執行,只要先記住它是一塊有輸入和輸出的集成電路就行了。

Instruction:指令,是CPU進行操作的基本單元,大致包含操作對象、操作對象的地址、對操作對象進行何種操作。

RAM相關結構

程序要想被CPU執行,首先要被編譯成CPU可以執行的指令操作,這里就不詳細介紹,本文就假設程序已經被編譯好了,放在了內存中。內存中存放的數據分為兩類,一類是指令;另一類是數據,不管是指令還是數據都有其對應的地址。

下圖就是接下來我們將會涉及的內存結構,這是從視頻中直接截取下來的,大家將就著看。

CPU程序執行過程

在上圖中,現在已經存放了地址為100、104、108、112的一系列指令;地址為2000、2004、2008的一系列數據。

CPU相關結構

這里只放出CPU的執行指令時涉及的基本結構,真實的情況還會復雜很多。

這里涉及到的結構有Program Counter(程序計數器)、Instruction Register(指令寄存器)、Data Register(數據寄存器)、ALU(算數邏輯單元),可以將計數器、寄存器都可以簡單理解為存放數據的器件。上述程序計數器用來存放指令的地址;指令寄存器用來存放指令(初學者可能會搞混數據和地址的區別,稍加區分就可以分辨);數據寄存器存放參與計算的數據,下圖中的A、B、C都是數據寄存器;ALU就是用于計算的器件。

cpu程序執行過程

執行過程

本文內容為便于理解,僅涉及到CPU和內存間的數據交換。

在了解了RAM和CPU相關結構之后,接下來就可以正式開始說明執行的過程,其實就是對以上敘述內容的一個組合。

  1. 程序計數器初始內容為100,指向內存中的某一項指令,注意100指的是地址;
  2. 指令寄存器根據程序計算器的指向地址,將內存中地址為100的指令抓取到自身,此時存放LOAD A,2000;
  3. CPU按照指令內容,將內存地址為2000的數據,上載到數據寄存器A中,此時CPU和RAM的狀態如下圖所示;cpu程序的執行過程
  4. 以上3步已完成一個指令的基本操作步驟。接下來程序計數器依次指向104指令地址、108指令地址、112指令地址,分別完成將2004地址的數據賦值給B數據寄存器;ALU將A、B內的數據相乘賦值給C數據寄存器;將C數據寄存器數據寫入內容地址2008中。
  5. 這樣就完成了50×0.1這個簡單程序的計算,最后CPU和RAM所處狀態如下圖所示。
cpu程序的執行過程
Tags:cpu,執行程序的原理  
責任編輯:admin
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網友評論
關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
久久成人国产精品一区二区,在线观看成人网站,精品久久久久久成人AV,国产成人无码免费网站
    <li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 主站蜘蛛池模板: 99在线精品视频| 国产精品乱码一区二区三区| 欧美成人精品1314www| 老巨人导航500精品| 久久一区欧美| 欧美黄污视频| 欧美日韩亚洲免费| 国产精品久久久久久久久久久久久久 | 国产一区二区三区四区三区四| 国产亚洲网站| 精品成人免费| 亚洲激情在线视频| 一区二区三区福利| 亚洲欧美区自拍先锋| 欧美专区亚洲专区| 蜜臀久久99精品久久久久久9 | 小嫩嫩精品导航| 久久午夜视频| 欧美激情综合五月色丁香| 国产精品国产三级国产普通话蜜臀| 国产精品永久免费| 激情六月婷婷久久| 亚洲精品久久久久久久久久久久久| 一区二区精品国产| 欧美在线|欧美| 欧美成人精品影院| 国产精品久久久久久久久搜平片| 国产一区二区三区网站| 亚洲国产黄色| 中日韩男男gay无套| 久久国产毛片| 欧美精品二区三区四区免费看视频| 国产精品爱啪在线线免费观看| 国产偷自视频区视频一区二区| 亚洲国产精品久久久久秋霞蜜臀| 一区二区三区免费网站| 久久国产主播精品| 欧美精品18| 国产日韩欧美高清免费| 亚洲人午夜精品| 欧美一进一出视频|