深入計算機原理——第三章機器級的表示(二)
棧有兩個常用指令:
push:把資料壓入棧中
pop:刪除資料
這兩個指令都只有一個運算元
條件碼
除了整數暫存器,CPU還維護著一組單個位的條件碼暫存器,它們描述了最近的算術或邏輯操作的屬性。可以檢測這些暫存器來執行條件分支指令;
常用條件碼有以下幾種:
- CF:進位標誌。最近的操作使最高位產生了進位。可用來檢查無符號操作的溢位。
- ZF:零標誌。最近的操作得到的結果為0。
- SF:符號標誌。最近的操作得到的結果為負數。
- OF:溢位標誌。最近的操作導致一個補碼溢位——正溢位或負溢位。
相關推薦
深入計算機原理——第三章機器級的表示(二)
棧有兩個常用指令: push:把資料壓入棧中 pop:刪除資料 這兩個指令都只有一個運算元 條件碼 除了整數暫存器,CPU還維護著一組單個位的條件碼暫存器,它們描述了最近的算術或邏輯操作的屬性。可以檢測這些暫存器來執行條件分支指令; 常用條件碼有以下幾種: CF:進位標誌。
深入理解計算機系統 第三章 程式的機器級表示 part1
如題所示,這一章講解了程式在機器中是怎樣表示的,主要講組合語言與機器語言。 學習什麼,為什麼學,以及學了之後有什麼用 我們不用學習如何建立機器級的程式碼,但是我們要能夠閱讀和理解機器級的程式碼。 雖然現代的優化編譯器能夠很有效的將高階程式碼翻譯成機器級的程式碼,但是,為了
深入理解計算機系統 第三章 程式的機器級表示 part2
這周由於時間和精力有限,只讀一小節:3.4.4 壓入和彈出棧資料 棧是一種特殊的資料結構,遵循“後進先出”的原則,可以用陣列實現,總是從陣列的一端插入和刪除元素,這一端被稱為棧頂。 棧有兩個常用指令: push:把資料壓入棧中 pop:刪除資
深入理解計算機系統 第三章 程式的機器級表示 part3
這周看了劉老師提供的相關視訊,以及書中對應的章節“3.7 過程” 這一節分為執行時棧、轉移控制、資料傳送、棧上的區域性儲存、暫存器中的區域性儲存空間和遞迴過程這 6 個小節 其中前 3 小節看懂了一部分內容,後面兩個還沒來得及看,下週看完補上
深入理解計算機系統 ——第三章 程式的機器級表示
### 這一章主要是介紹高階語言,例如C語言編寫的程式,經過編譯後轉換為彙編程式。以往在程式設計師對機器進行操作主要都是使用匯編語言。筆者在大學做微控制器開發的時候,老師制訂的實驗,明確要求使用匯編語言。 組合語言的使用和掌握能夠很好地幫助程式設
深入理解計算機系統 第三章大略和第五章大略
$0 一個 編譯 存儲器 系統 32位 做了 ++i 擴展 這2章總結的很少,主要是覺得沒那麽重要。 1.2個操作數的指令,第二個操作數通常是目的操作數:movb a b,move a to b,而add a b,b+=a,指令分為指令類,如mov類:movb,movw,m
第三章 機器的程式級表示
計算機執行機器程式碼,用位元組序列編碼低階的操作。彙編程式碼是機器程式碼的文字表示。 程式編碼: linux> gcc -Og -o p p1.c p2.c 命令gcc即GCC C編譯器。使用gcc命令將原始碼轉換成可執行程式碼。首先,C前處理器擴充套件原始碼,插入所有用#includ
傳輸層_計算機網路原理第三章_自考本科段
概要:計算機網路原理第三章傳輸層知識點小結 1、傳輸層基本服務 識記:傳輸層基本服務 (1)傳輸層基本服務:為網路應用程序提供端到端的邏輯通訊服務;提供的服務可分為無連結服務和麵向連線服務。
第三章 機器的程式級表示(中)
資料傳送指令: MOV指令:將資料從源位置複製到目的位置,不做任何變化;MOV指令由四條指令組成:movb、movw、movl、movq;它們的區別在於它們操作的資料大小不同,分別為1、2、4、8位元組; 壓入和彈出棧資料: 遵循“後進先出”原則,通過push操作將資料壓入棧中,通過pop操作刪除資
第三章 機器的程序級表示(中)
switch語句 新的 移位 rap mage 中一 產生 可能 整數和 數據傳送指令: MOV指令:將數據從源位置復制到目的位置,不做任何變化;MOV指令由四條指令組成:movb、movw、movl、movq;它們的區別在於它們操作的數據大小不同,分別為1、2、4、8字節
第三章 機器的程式級表示(下)
資料傳送: 當過程P呼叫過程Q時,P的程式碼必須首先把引數複製到適當的暫存器中。類似的,當Q返回到P時,P的程式碼可以訪問暫存器中的返回值; 每個過程呼叫在棧中都有它自己的私有空間,因此,多個未完成呼叫的區域性變數不會相互影響。當過程被呼叫時分配區域性儲存,當返回時釋放儲存; 陣列的分配
深入理解計算機系統 第十章 系統級I/O
關於 內核 檢索 執行 循環 讀取 當前 讀寫 原因 很多高級語言都提供了執行 I/O 的較高級別的函數。為什麽我們還要學習 Unix I/O? 原因:1、由於 I/O 和其他系統概念之間有循環依賴關系,故了解 Unix I/O 將幫助我們理解其他的系統概念 2、有些特
計算機漫遊——第三章
資料格式 術語字(word)表示16位資料型別,32位數為雙字(double words),64位數為四字(quad words)。圖3-1給出了c語言的資料型別在x86-64中的大小。在64位機器中標準int為雙字,指標為8字。不通資料型別產生的彙編程式碼字尾如圖所示。movb(傳送位元組
編譯原理 第三章 詞法分析(上)
3.1.1 為什麼編譯器要把詞法分析和語法分析分開 3.1.2 詞法單元、模式和詞素(重要) 例: 3.1.3 詞法單元的屬性(重要) 詞法單元的屬性是用來記錄相對應的詞素的一些相關屬性資訊。 例: int x = 10 + 20
編譯原理 第三章 詞法分析(下)
3.6 有窮自動機(非常重要) 3.6.1 不確定的有窮自動機(重要) 例: 狀態0是開始狀態, 在狀態0上輸入符號b會進入狀態0,輸入a可能進去狀態0也有可能進入狀態1。所以對於狀態0來說一個確定的輸入符號a他有兩種離開狀態,這就是一種不確定的狀態。 &nbs
計算機網路第三章
鏈路:一個結點到相鄰結點的一段物理無線。 資料鏈路:鏈路加上實現這些協議的硬體和軟體。 資料鏈路層的三個基本問題 封裝成幀:在一段資料的前後分別新增首部和尾部。 透明傳輸 透明:某一個實際存在的事物看起來卻好像不存在一樣。 差錯檢測 凡是接收端資
現代編譯原理——第三章:抽象語法樹以及原始碼
轉自: http://www.cnblogs.com/BlackWalnut/p/4508093.html 這是flxe的檔案,檔名稱為tiger.l %{ #include <string.h> #include "util.h" #
計算機作業系統第三章自測題-處理機排程與死鎖
1、在單處理器的多程序系統中,程序什麼時候佔有處理器以及決定佔用時間的長短是由( )決定的。 A、程序執行時間 B、程序的特點和程序排程策略 C、程序執行的程式碼 D、程序完成什麼功能 程序排程的時機與程序特點有關,如程序是否為CPU繁忙型還是I/O繁忙型
資料庫原理第三章習題作業
學號:2013211492 1、關係模型由哪三部分組成? 關係資料結構、關係資料操作和完整性約束 2、什麼是關係的實體完整性規則? 基本關係的所有主關鍵字對應的主屬性都不能取空值,例如,學生選課的關係選課(學號,課程號,成績)中,學號和課程號共同組成為主關鍵字,則學號和課
計算機網路第三章(3)
糾一位錯誤的海明碼 設一個系統中,編碼後的碼字位數是 n,則 n=m+r。因為要傳輸的資料位是 m 位,該系統需要傳輸的正確的碼字個數應該是2m,而全部碼字的個數是2n。 如果每個正確碼字發生1位錯,能夠被糾錯,至少發生1位錯不會變成另外1個正確的碼字,如果n位