一、彙編語言基礎
彙編語言 = 操作碼+操作數
注:.bin文件爲二進制文件,裏面是純淨的機器指令,純淨的意思就是註釋什麼的等等都沒有。.lst是列表文件,lst是list列表的簡寫。
二、HexView軟件
該軟件可以打開二進制文件(程序),以十六進制格式閱讀機器碼
注:其中的十六進制和字符的對應關係遵循ASCII編碼表。若在編碼表中無對應字符,則顯示一個點。
注:.lst文件通過HexView軟件打開後的樣子。可以看到lst文件其實就是通過文本形式存儲機器指令的文件。
三、寄存器、內存
注:內存組織數據是按字節來的,但是外部訪問內存是可以通過字節或者字或者雙字等方式進行單次訪問,即通過上面的字長控制信號進行控制。
四、字節序
注:存儲005D的數據,在內存中的“低端字節序存儲方式”和“高端字節序存儲方式”。不同的處理器會選擇不同的存儲方式。
五、8086寄存器,總共有14個寄存器,分爲以下三個部分
六、代碼段和數據段
注:當mov指令執行完之後,AX寄存器的狀態如圖中所示。上圖形象的說明了“程序 = 指令 + 數據”。
程序的重定位問題
注:相對地址或者說邏輯地址是不固定的,相同的程序加載到內存中時,邏輯地址會被重新計算,方便重新定位到程序所用的數據。
那麼邏輯地址的原理是什麼呢
注:如上圖,邏輯地址和物理地址是可以相同的。
注:程序再次讀入內存時,寄存器會再次計算程序的“首地址”,進行存儲,這樣不管地址怎麼變,都能準確的定位到程序需要的數據。
七、計算機聽誰的指揮
注:處理器的處理數據依據,CS+IP,決定了處理器執行那條指令。
八、硬盤
九、操作系統的自舉
注:我們可以自己寫代碼到主引導扇區,這樣就跳過操作系統來執行自己的代碼了。
十、顯卡和顯存
注:若顯示器中的一個像素要表達更多的色彩,則,顯存中所要存儲的數據就更多。如顯存中1個比特代表一個像素和8個比特代表一個像素在顯示器中的呈現是不一樣的。
文本模式
十一、操作系統和處理器架構
十二、操作系統發展史相關