運算器運算器由運算部件——算術邏輯單元(Arithmetic & Logical Unit,簡稱ALU)、累加器和寄存器等幾部分組成。ALU的作用是把傳來的數據進行算術或邏輯運算,輸入來源為兩個8位數據,分別來自累加器和數據寄存器。ALU能完成對這兩個數據進行加、減、與、或、比較大小等操作,最后將結果存入累加器。運算器有兩個功能:(1) 執(zhí)行各種算術運算。(2) 執(zhí)行各種邏輯運算,并進行邏輯測試,如零值測試或兩個值的比較。運算器所執(zhí)行全部操作都是由控制器發(fā)出的控制信號來指揮的,并且,一個算術操作產生一個運算結果,一個邏輯操作產生一個判決。
控制器控制器由程序計數器、指令寄存器、指令譯碼器、時序發(fā)生器和操作控制器等組成,是發(fā)布命令的“決策機構”,即協調和指揮整個微機系統的操作。其主要功能有:(1) 從內存中取出一條指令,并指出下一條指令在內存中的位置。(2) 對指令進行譯碼和測試,并產生相應的操作控制信號,以便于執(zhí)行規(guī)定的動作。(3) 指揮并控制CPU、內存和輸入輸出設備之間數據流動的方向。微處理器內通過內部總線把ALU、計數器、寄存器和控制部分互聯,并通過外部總線與外部的存儲器、輸入輸出接口電路聯接。外部總線又稱為系統總線,分為數據總線DB、地址總線AB和控制總線CB。通過輸入輸出接口電路,實現與各種外圍設備連接。
主要寄存器(1)累加器A累加器A是微處理器中使用最頻繁的寄存器。在算術和邏輯運算時它有雙功能:運算前,用于保存一個操作數;運算后,用于保存所得的和、差或邏輯運算結果。(2)數據寄存器DR數據寄存器通過數據總線向存儲器和輸入/輸出設備送(寫)或取(讀)數據的暫存單元。它可以保存一條正在譯碼的指令,也可以保存正在送往存儲器中存儲的一個數據字節(jié)等等。(3)指令寄存器IR和指令譯碼器ID指令包括操作碼和操作數。指令寄存器是用來保存當前正在執(zhí)行的一條指令。當執(zhí)行一條指令時,先把它從內存中取到數據寄存器中,然后再傳送到指令寄存器。當系統執(zhí)行給定的指令時,必須對操作碼進行譯碼,以確定所要求的操作,指令譯碼器就是負責這項工作的。其中,指令寄存器中操作碼字段的輸出就是指令譯碼器的輸入。(4)程序計數器PCPC用于確定下一條指令的地址,以保證程序能夠連續(xù)地執(zhí)行下去,因此通常又被稱為指令地址計數器。在程序開始執(zhí)行前必須將程序的第一條指令的內存單元地址(即程序的首地址)送入PC,使它總是指向下一條要執(zhí)行指令的地址。(5)地址寄存器AR地址寄存器用于保存當前CPU所要訪問的內存單元或I/O設備的地址。由于內存與CPU之間存在著速度上的差異,所以必須使用地址寄存器來保持地址信息,直到內存讀/寫操作完成為止。顯然,當CPU向存儲器存數據、CPU從內存取數據和CPU從內存讀出指令時,都要用到地址寄存器和數據寄存器。同樣,如果把外圍設備的地址作為內存地址單元來看的話,那么當CPU和外圍設備交換信息時,也需要用到地址寄存器和數據寄存器。
(1)單片機的體積比較小, 內部芯片作為計算機系統,其結構簡單,但是功能完善,使用起來十分方便,可以模塊化應用。(2)單片機有著較高的集成度,可靠性比較強,即使單片機處于長時間的工作也不會存在故障問題。(3) 單片機在應用時低電壓、低能耗,是人們在日常生活中的首要選擇, 為生產與研發(fā)提供便利。(4)單片機對數據的處理能力和運算能力較強,可以在各種環(huán)境中應用,且有著較強的控制能力。
歷史單片機的發(fā)展先后經歷了4位、8位、16位和32位等階段。8位單片機由于功能強,被廣泛用于工業(yè)控制、智能接口、儀器儀表等各個領域,8位單片機在中、小規(guī)模應用場合仍占主流地位,代表了單片機的發(fā)展方向,在單片機應用領域發(fā)揮著越來越大的作用。 [3] 80年代初,Intel公司推出了8位的MCS-51系列的單片機。
51單片機的部件MCS-51單片機的邏輯部件,包括一個8位CPU及片內振蕩器、 80514B掩膜ROM、87514KBEPROM、8031無ROM、特殊功能寄存 器SFR128BRAM、定時器/計數器T0及T1、并行I/O接口:P0、P1、P2、P3;串行接口:TXD、RXD;中斷系統:INT0,INT1。 [3]
基本功能1.8位數據總線,16位地址總線的CPU;2.具有布爾處理能力和位處理能力;3.采用哈佛結構,程序存儲器與數據存儲器地址空間各自獨立,便于程序設計;4.相同地址的64KB程序存儲器和64KB數據存儲器;5.0-8KB片內程序存儲器(8031無,8051有4KB,8052有8KB,89C55有20KB);6.128字節(jié)片內數據存儲器(8051有256字節(jié));7.32根雙向并可以按位尋址的I/O線;8.兩個16位定時/計數器(8052有3個);9.一個全雙工的串行I/O接口;10.多個中斷源的中斷結構,具有兩個中斷優(yōu)先級;11.片內時鐘振蕩器。