電腦是如何工作的

來源:互聯網
上載者:User

標籤:

                                                                       電腦是如何工作的

 

                                                                               姓名:高藝桐

                                                                               學習資源:《Linux核心分析》MOOC課程http://mooc.study.163.com/course/USTC-1000029000

一、儲存程式電腦工作的模型

馮諾依曼體繫結構換句話講為儲存程式電腦模型。

(1)從硬體角度

 CPU和記憶體間通過匯流排串連,CPU內的IP寄存器分為16bit 32bit 64bit,CPU從IP指向的記憶體位址取指令執行,IP自加一,取下一條指令再執行。

(2)從程式員角度

CPU內進行for迴圈執行指令,與記憶體間通過匯流排串連。

ABI:程式與CPU的介面介面

EPI:自加一,執行下一條指令

二、X86 彙編基礎

2.1 X86 CPU寄存器

(1)通用寄存器

註:開頭為E的寄存器為32位寄存器 EBP堆棧基寄存器 ESP堆棧頂寄存器

(2)段寄存器

註:CS-程式碼片段寄存器  SS-堆棧寄存器

CPU實際取指令 CS:eip來確定位一個指令

(3)標誌寄存器:標誌當前的一個位置

2.2 X86 64位寄存器

32位與64位核心機制上差別不大。開頭帶R的指64位寄存器

(1)通用寄存器

2.3 mov指令及幾種定址方式

(1)mov指令

註:movb代表8位,movw代表16位.movl代表32位,movq代表64位。

寄存器模式,以%開頭的寄存器標示等。

movl  %eax ,%edx    將eax賦值給edx                                   寄存器定址

movl  &ox123,%edx   123的16進位數放入edx                         立即定址

movlx ox123%,%edx 16進位123所指的記憶體資料放入edx           直接定址(直接存取一個指定的記憶體位址資料)

movlx (%ebx),%edx 將寄存器的值直接作為記憶體位址訪問         間接定址

movlx 4(%ebx),%edx 在間接定址的基礎上改變寄存器的數值     變址定址

2.4幾種重要的彙編指令

三、分析實驗樓中的代碼

3.1進入實驗樓進行實驗 如下

    

   

 註:

cd Code 進行下載

i為插入模式 esc退出插入

刪除整行以點開頭的代碼用dd組合刪除,留下純彙編代碼

3.2進行程式碼分析

四、總結

 通過本次對Linux課程的學習,我瞭解到了電腦通過CPU中的寄存器讀取指令進行工作,並掌握了簡單的彙編指令,比如mov指令,push指令,pop指令,ret指令,leave指令等,通過對程式碼片段的深入理解對以上指令又進行了鞏固和提高,領悟了這些指令的異同,比如pop指令和push指令,push指令先進行%esp的減,再進行賦值;而pop指令先進行%esp的加,再將esp記憶體位址進行賦值。這些細節概念稍有疏忽,結果就會的大有不同。在日後的學習中,定要更加註意細節,完善自我。在實驗樓的實驗中,因為第一次接觸Linux語言,所以在代碼的粘貼步驟出現了問題,後來通過請教同學瞭解到了輸入i進入插入模式,進行粘貼,esc鍵退出粘貼模式,讓我受益匪淺。

  在日後對Linux課程的學習過程中,我定會更加的用心,細心,耐心,注重複習和鞏固,養成良好的學習習慣。

 

 

 

 

 

 

 

 

 

電腦是如何工作的

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.