1. 程式人生 > >匯編第一章

匯編第一章

技術分享 復雜 計算機 了解 也有 大腦 編程 尋址 其它

計算機編程語言的演進:機器語言->匯編語言->高級語言。

機器語言是0和1構成的二進制信息,計算機可以直接識別、執行。但由於十分復雜,故有了後面的匯編語言,個人認為匯編語言就是程序員們創造出的一本字典,將重復用到的指令事先編譯好,抽象為一些語句,化復雜為簡單。越來越多的程序員不斷的擴展和完善體系,使得這本字典越發的龐大,規則也越發完善,因此形成了高級語言。這樣或許沒有機器指令那些執行速度快,但大大提高了程序員開發的效率,使得計算機語言沒有以前那樣難懂和繁瑣。

匯編語言由3部分組成:

(1) 匯編指令
(2) 偽指令
(3) 其它符號

技術分享圖片

眾所周知,匯編語言是可以對內存進行操作的,因此要了解計算機的存儲方式和如何對內存進行讀寫。(CPU在其中有著很重要的作用)

這裏就有許多概念需要了解了:

存儲器的概念:存儲器對於cpu而言 ,就是記憶對於大腦而言。存儲器存放指令和數據(二進制形式)

指令和數據:指令和數據都以二進制信息。

存儲器被劃分為若幹個存儲單元,最小單元就是存儲單元,一個存儲單元能存儲一個字節(8位二進制)

總線:地址總線、控制總線、數據總線

地址總線:地址總線用於選擇存儲單元,地址總線的數量,標誌著CPU的尋址能力,如果是10跟,cpu就可以找到1024個存儲單元

控制總線:控制總線用於選擇對存儲器進行什麽操作,比如讀寫操作。控制總線是一些不同控制線的集合。有多少跟控制總線,就意味著CPU對外部器件的多少種控制。

數據總線:控制總線用於CPU與內存或者其他其間之間的數據傳送。數據總線的寬度意味著一次可以傳送二進制數據的位數。比如8跟數據總線,一次就可以傳送一個8為二進制數即1個字節。16跟一次就可以傳送兩個字節。

CPU對某個期間進行操作的過程:

1、通過地址總線,選中器件的某個存儲單元

2、通過控制總線,選擇要對該單元進行什麽樣的操作

3、通過數據總線傳送數據

過程圖如下:

技術分享圖片

學完第一章之後,對匯編有了更深刻的理解,同時也有著很多的困惑,對這些概念的具體實現還是不能了解的很通透,這些或許要在自己動手開始玩單片機才會知道把,如果有機會的話會進一步了解的。

匯編第一章