通過兩節課的學習,對機器語言和匯編語言有了些許了解,也同樣了解到了計算機硬件方面的相關知識,拓展了知識面。以下是對匯編語言第一章內容的梳理。
1.1機器語言
機器語言是機器指令的集合。電子計算機的機器指令是一列二進制數字,計算機將它轉變為一列高低水平來驅動電子器件進行運算。
早期的計算機指可以執行機器指令,進行運算的機器。而現在,我們有CPU(Central Processing Unit,中央處理單元)來完成以上內容。CPU是一種微處理器。
早期的程序設計使用機器語言。程序員們用0,1數字編成的程序代碼打在紙帶或卡片上,1為打孔,0不打孔,再將程序通過紙帶機或卡片輸入計算機,進行運算。而我們現如今在顯示器上輸入“welcome to masm”這樣簡單的短語,將會用到許多0,1的組合。
為了防止出現錯誤,難於辨別和記憶,匯編語言便由此產生。
1.2匯編語言的產生
匯編語言的主體是匯編指令。匯編指令和機器指令的差別在於指令的表示方法上。匯編指令是機器指令便於記憶的書寫格式。例如:
操作:七寸器BX的內容送到AX中
機器指令:1000100111011000
匯編指令:mov ax,bx
但計算機只能讀懂機器指令,這時就需要一個能將匯編指令轉換成機器指令的翻譯程序,也就是所謂的編譯器。並以
程序員→匯編指令→編譯器→機器碼→計算機 的步驟執行代碼。
1.3匯編語言的組成
匯編語言的3類指令:
(1)匯編指令:機器碼的助記符,有對應的機器碼。
(2)偽指令:沒有對應的機器碼,由編譯器執行,計算機並不執行。
(3)其他符號:如+、-、*、/等,由編譯器識別,沒有對應的機器碼。
匯編語言的核心是匯編指令,它決定了匯編語言的特性。
1.4存儲器
CPU是計算機的核心部件,它控制着整個計算機的運作並進行運算。
指令和數據是CPU工作的必要條件,它們在寄存器中存放,即我們所說的內存。內存的作用僅次於CPU。
磁盤不同於內存,磁盤上的數據或程序如果讀不到內存中,就無法被CPU使用。
1.5指令和數據
在內存或磁盤上,指令和數據沒有任何區別,都是二進制信息。CPU在工作時把有的信息看做指令,有的看做數據,賦予了不用的意義。
1.6存儲單元
存儲器被划分成若干存儲單元,每個存儲單元從0開始順序編號,例如一個存儲器有128個存儲單元,編號從0~127。
計算機最小的信息單位是bit,也就是一個二進制位。微型機存儲器得到存儲單元可以存儲一個Byte,即8個二進制位。
一個存儲器有128個存儲單元,它可存儲128個Byte。
1KB=1024B 1MB=1024KB 1GB=1024MB 1TB=1024GB
1.7 CPU對存儲器的讀寫
存儲單元的編號可以看作存儲單元在存儲器中的地址。CPU也是通過存儲單元的地址來從內存中讀數據。
CPU想要進行數據的讀寫,必須和外部器件(標准的說法是芯片)進行下面3類信息交互。
存儲單元的地址(地址信息);
器件的選擇,讀或寫的命令(控制信息);
讀或寫的數據(數據信息)。
總線:專門連接CPU和其他芯片的導線。分為3類,地址總線、控制總線和數據總線。
1.8 地址總線
CPU是通過地址總線來制定存儲單元的。一個CPU有N根地址總線,也可以說CPU的地址總線寬度為N,最多可以尋找2的N次方個內存單元。
1.9 數據總線
數據總線的寬度決定了CPU和外界數據傳送速度。8根數據總線一次可傳送一個字節。
1.10 控制總線
控制總線的寬度決定了CPU對系統中其它器件的控制能力。
1.11 內存地址空間
CPU可尋到的內存單元。
1.12 主板
CPU、存儲器、外圍芯片組、擴展槽等所放置的地方,這些器件通過總線相連。
1.13 接口卡
直接控制外部設備工作的插在擴展插槽的器件。
1.14 各類存儲器件
讀寫屬性分:隨機存儲器(RAM)和只讀存儲器(ROM)
功能分:隨機存儲器、裝有BIOS(Basic Input/Output System,基本輸入/輸出系統)的ROM和接口卡上的RAM。