中微編程
Ⅰ 微程序設計的基本原理是什麼
在微指令的控制欄位中,每一位代表一個微命令,在設計微指令時,是否發出某個微命令,只要將控制欄位中相應位置成"1"或"0",這樣就可打開或關閉某個控制門,這就是直接控製法.
在6.3節中所講的就是這種方法.但在某些復雜的計算機中,微命令甚至可多達三四百個,這使微指令字長達到難以接受的地步,並要求機器有大容量控制存儲器,為了改進設計出現了以下各種編譯法.
6.4.1 微指令的編譯法(編碼解碼方法)(2)
2.欄位直接編譯法
在計算機中的各個控制門,在任一微周期內,不可能同時被打開,而且大部分是關閉的(相應的控制位為"0").所謂微周期,指的是一條微指令所需的執行時間.如果有若干個(一組)微命令,在每次選擇使用它們的微周期內,只有一個微命令起作用,那麼這若干個微命令是互斥的.
例如,向主存儲器發出的讀命令和寫命令是互斥的;又如在ALU部件中,送往ALU兩個輸入端的數據來源往往不是唯一的,而每個輸入端在任一微周期中只能輸入一個數據,因此控制該輸人門的微命令是互斥的.
選出互斥的微命令,並將這些微命令編成一組,成為微指令字的一個欄位,用二進制編碼來表示, 就是欄位直接編譯法.
6.4.1 微指令的編譯法(編碼解碼方法)(3)
例如,將7個互斥的微命令編成一組,用三位二進制碼分別表示每個微命令,那麼在微指令中,該欄位就從7位減成3位,縮短了微指令長度.而在微指令寄存器的輸出端,為該欄位增加一個解碼器,該解碼器的輸出即為原來的微命令.
6.4.1 微指令的編譯法(編碼解碼方法)(4)
欄位長度與所能表示的微命令數的關系如下:
欄位長度 微命令數
2位 2~3
3位 4~7
4位 8~15
一般每個欄位要留出一個代碼,表示本段不發出任何微命令,因此當欄位長度為3位時,最多隻能表示7個互斥的微命令,通常代碼000表示不發微命令.
6.4.1 微指令的編譯法(編碼解碼方法)(5)
3.欄位間接編譯法
欄位間接編譯法是在欄位直接編譯法的基礎上,進一步縮短微指令字長的一種編譯法.
如果在欄位直接編譯法中,還規定一個欄位的某些微命令,要兼由另一欄位中的某些微命令來解釋,稱為欄位間接編譯法.
本方法進一步減少了指令長度,但很可能會削弱微指令的並行控制能力,因此通常只作為直接編譯法的一種輔助手段.
6.4.1 微指令的編譯法(編碼解碼方法)(6)
欄位A(3位)的微命令還受欄位B控制,當欄位B發出b1微命令時,欄位A發出a1,1,a1,2,…,a1,7中的一個微命令;而當欄位B發出b2微命令時,欄位A發出a2,1,a2,2,…,a2,7中的一個微命令,僅當A為000時例外,此時什麼控制命令都不產生.
6.4.1 微指令的編譯法(編碼解碼方法)(7)
4.常數源欄位E
在微指令中,一般設有一個常數源欄位E就如指令中的直接操作數一樣.E欄位一般僅有幾位,用來給某些部件發送常數,故有時稱為發射欄位.
該常數有時作為操作數送入ALU運算;有時作為計算器初值,用來控制微程序的循環次數等.
6.4.2 微程序流的控制 (1)
當前正在執行的微指令,稱為現行微指令,現行微指令所在的控制存儲器單元的地址稱現行微地址,現行微指令執行完畢後,下一條要執行的微指令稱為後繼微指令,後繼微指令所在的控存單元地址稱為後繼微地址.
所謂微程序流的控制是指當前微指令執行完畢後,怎樣控制產生後繼微指令的微地址.
與程序設計相似,在微程序設計中除了順序執行微程序外還存在轉移功能和微循環程和微子程序等,這將影響下址的形成.
下面介紹幾種常見的產生後繼微指令地址的方法.
6.4.2 微程序流的控制 (2)
(1)以增量方式產生後繼微地址.
在順序執行微指令時,後繼微地址由現行微地址加上一個增量(通常為1)形成的;而在非順序執行時則要產生一個轉移微地址.
機器加電後執行的第一條微指令地址(微程序入口)來自專門的硬體電路,控制實現取令操作,然後由指令操作碼產生後繼微地址.接下去,若順序執行微指令,則將現行微地址主微程序計數器( PC中)+1產生後繼微地址;若遇到轉移類微指令,則由 PC與形成轉移微地址的邏輯電路組合成後繼微地址.
6.4.2 微程序流的控制 (3)
6.4.2 微程序流的控制 (4)
(2)增量與下址欄位結合產生後繼微地址
將微指令的下址欄位分成兩部分:轉移控制欄位BCF和轉移地址欄位BAF,當微程序實現轉移時,將BAF送 PC,否則順序執行下一條微指令( PC+1).
執行微程序條件轉移時,決定轉移與否的硬體條件有好幾種.例如,"運算結果為零","溢出","已完成指定的循環次數"等.
我們假設有八種轉移情況,定義了八個微命令(BCF取3位),在圖中設置計數器CT用來控制循環次數.如在執行乘(或除)法指令時,經常採用循環執行"加,移位"(或減,移位)的方法,指令開始執行時,在CT中置循環次數)每執行一次循環,計數器減1,當計數器為零時結束循環.又考慮到執行微子程序時,要保留返回微地址,因此圖中設置了一個返回寄存器RR.
Ⅱ 簡述程序和微程序兩個的概念和區別。
程序是一系列機器指令的有序集合,用於解決實際問題,有子程序、分支、循環等結構,存放在主存中,可以更新修改;
微程序是一系列微指令的有序集合,微程序設計是將傳統的程序設計方法運用到控制邏輯的設計中,因此在微程序中也可以有微子程序、分支、循環等結構。
區別:
1、體系不同
程序它以某些程序設計語言編寫,運行於某種目標結構體繫上。微程序存儲在控制存儲器CM中,只能讀出,不能更改,CM中的所有微程序解釋執行整個指令系統中的所有機器指令。
2、編譯不同
一般的,程序是由高級語言編寫,然後在編譯的過程中,被編譯器/解釋器轉譯為機器語言,從而得以執行。
有時,也可用匯編語言進行編程,匯編語言在機器語言上進行了改進,以單詞代替了0和1,例如以Add代表相加,Mov代表傳遞數據等。
(2)中微編程擴展閱讀:
微程序的設計技術:
微程序設計技術,指的是利用軟體技術來實現硬體設計的一門技術。優點:微程序設計克服了組合邏輯控制單元線路龐雜的缺點,同硬布線比較具有規整性,靈活性,可維護性等一系列優點。缺點:由於增加了到控制存儲器中讀取微指令的時間導致執行速度慢。
程序的運行:
為了使計算機程序得以運行,計算機需要載入代碼,同時也要載入數據。從計算機的底層來說,這是由高級語言(例如Java,C/C++,C#等)代碼轉譯成機器語言而被CPU所理解,進行載入。
Ⅲ 高中微機課學編程嗎
不學,都是學習一些計算理論基礎。
eg:塊模一:計算機基礎。分緒論;數據的表示、存儲與運算;計算機硬體系統;軟體系統;病毒的預防、檢查與消除。
塊模二:一:中文windowsXP,1,wondowsXP概述;2,wondowsXP的基本操作,3.wondowsXP的管理工具;4。wondowsXP的應用程序;wondowsXP的附件。
塊模三:文字處理系統。
1.辦公軟體中文office2003/2007簡介;2.文檔編輯;3.排版與列印;4.製表;5.插入資料;6.其他功能;7.新增功能。另一個是文字處理系統WPS跟上面那個文字處理差不多。
模塊四:表處理系統。電子表格。
模塊五:計算機教育應用。1.是基礎;2。多媒體技術及其應用;3。多媒體軟體開發。模塊六:計算機網路應用。
Ⅳ 微程序設計是什麼
微程序(microprogram)是英國劍橋大學教授M.V.Wilkes在1951年首先提出的,它是實現程序的一種手段,具體就是將一條機器指令編寫成一段微程序。每一個微程序包含若干條微指令,每一條微指令對應一條或多條微操作。在有微程序的系統中,CPU內部有一個控制存儲器,用於存放各種機器指令對應的微程序段。當CPU執行機器指令時,會在控制存儲器里尋找與該機器指令對應的微程序,取出相應的微指令來控制執行各個微操作,從而完成該程序語句的功能。微程序設計技術,指的是利用軟體技術來實現硬體設計的一門技術。
微程序設計技術,指的是利用軟體技術來實現硬體設計的一門技術。
優點:微程序設計克服了組合邏輯控制單元線路龐雜的缺點,同硬布線比較具有規整性,靈活性,可維護性等一系列優點。
缺點:由於增加了到控制存儲器中讀取微指令的時間導致執行速度慢。
Ⅳ 微程序和程序的關系
微程序是由多個機器指令組成的機器指令集,程序則是為了完成某一應用功能所編寫的代碼的集合。簡單一點,微程序是機器指令級別的,程序是高級語言級別的。
一種用於解決實際問題的機器指令的有序集合,包括子程序、分支、循環和其他結構,存儲在主存中,可以更新和修改;
微程序設計是一組有序的微指令。微程序設計是傳統程序設計方法在控制邏輯設計中的應用。因此,微程序也可以有微子程序、分支、循環等結構。
(5)中微編程擴展閱讀:
微程序和程序的區別
1、不同的系統
是用某種編程語言編寫的,運行在某種目標架構上。微程序存儲在控制內存CM中,控制內存CM只能讀取,不能更改。CM中的所有微程序解釋並執行整個指令系統中的所有機器指令。
2、編譯是不同的
通常,程序是用高級語言編寫的,然後在編譯期間由編譯器/解釋器翻譯成機器語言以執行。
在某些情況下,也可以用匯編語言進行編程,匯編語言經過機器語言的修改,用文字代替0和1,如Add用於添加,Mov用於傳遞數據等。
Ⅵ 微程序設計的基本原理是什麼
微程序設計技術
微程序設計的關鍵是如何確定微指令的結構(包括微指令編碼和微地址形成方法)。
微指令設計追求的目標 (1) 有利於縮短微指令字長度;
(2) 有利於減小控制存儲器的容量;
(3) 有利於提高微程序的執行速度;
(4) 有利於對微指令的修改;
(5) 有利於微程序設計的靈活性。
一、微指令編碼
(1)直接表示法---微指令操作控制宇段中的每一位代表一個微命令。
· 優點:簡單直觀,其輸出可直接用於控制;
· 缺點:微指令字較長,因而使控制存儲器容量較大。
(2)編碼表示法---把一組相斥性的微命令信號組成一個小組(即一個欄位),然後通過小組(欄位)解碼器產生操作控制信號。
· 優點:可以用較少的二進制信息位表示較多的微命令信號,使微指令字長大大縮短;
· 缺點:由於增加了解碼延時,微程序的執行速度略有減慢。
(3)混合表示法---把直接表示法與編碼表示法混合使用,以便綜合考慮微指令字長、靈活性和執行微程序速度等方面的要求。