根據一條指令中有幾個運算元位址,可將該指令稱為幾運算元指令或幾位址指令。
三位址指令
功能描述: (a1)op (a2)→a3 ;(pc)+1→pc
解釋:a1內的資料和a2內的資料進行某種操作(op)把操作結果放到a3這個位址單元中 注:a1,a2,a3是位址碼,表示位址資訊。
( )表示取位址碼所在的儲存單元內的資訊。即加括號取存的資訊,不加就取位址資訊。
cpu內有暫存器,在專用暫存器——程式計數器(pc/8086ip),放下一條指令的位址。(pc)+1→pc(自動做)
例子:a1 op a2 →(a3)
此條表示a1的位址與a2的位址相加,放到a3內存放的資訊所指的位址
假如a1 指向01 a2 指向02 a3指向03,內部儲存08 op為加法操作 此條表示把01+02的結果03 放到08位址的記憶體單元。
訪問記憶體次數:以(a1) op (a2)→((a3))為例子
1:把指令從記憶體中取出來
2、a1由於加括號,訪問一次記憶體
3、a2 由於加括號,訪問一次記憶體
4、a3靠內的那個括號,訪問一次記憶體
5、a3靠外的那個括號,訪問一次記憶體
6、把資料放入儲存單元,訪問一次記憶體
一共6次
指令長度仍比較長,所以只在字長較長的大、中型機中使用,而小型、微型機中很少使用
二位址指令
功能描述: (a1)op (a2)→a1 ;(pc)+1→pc
a1:目的運算元(運算結果存放的地方) a2:源運算元
二位址指令在計算機中得到了廣泛的應用,但是在使用時有一點必須注意:指令執行之後,a1中原存的內容已經被新的運算結果替換了。
單位址指令
功能描述: 只有目的運算元的單運算元指令,如「+1"、
「-1」、「求反」
op(a1)一》a1:(pc)+1–>pc
隱含約1定目的地的雙運算元指令
(acc) op (a1 ) -> acc:
(pc)+1一->pc
零位址指令
指令操作碼與位址碼
指令字 簡稱指令 即表示一條指令的機器字。指令格式則是指令字用二進位制 表示的結構形式,由操作碼欄位和位址碼字段組成。操作碼字段表徵指令的操作特性與功能 位址碼字段通常指定參與操作的運算元的位址。操作碼字段 位址碼字段 指令系統的每一條指令都有乙個操作碼,它表示該指令應進行什麼性質的操作。不同的指令...
組成原理說明 位址對齊
1.引入 1.1如下面的 定義了三個變數,int,char,int,並輸出他們的十六進製制的記憶體位址。includeint main 1.2圖示分析上述 中為定義的變數a,b,c分配了記憶體單元,分配記憶體單元是從大位址開始分配的,可見a的記憶體位址大於b的位址。除非分配的記憶體單元迴圈了。從0跳...
挑戰408 組成原理(17) 指令格式
好久沒更新了,放元旦本來打算跨個年,可惜外面太冷。還是我在家裡寫寫文章吧。由開始的時候我們知道,計算機能解題,是由於機器本身存在一種語言,它既能理解人的意圖,又能被機器本身識別。機器語言,是由一條條語句構成的,每一條語句又能準確的表達某種語義 比如某種運算元,參與操作的數,或者其他的資訊在何處 而計...