彙編語言
high level language
low level language:assembly;machine
一、彙編語言是什麼?
二進制指令的文本形式
指令(instruction)
操作碼(opcode)
程序——>編譯器——>操作碼
二、來歷
手寫二進制指令——開關——輸入計算機
紙帶打孔機
二進制——八進制——文字(內存地址不再直接飲用,標籤)
assembing <————————
x86彙編語言,Intel
三、寄存器
1、寄存器(register) cpu緩存/內存
2、內存模型
hard disk——> RAM ——> cache——>cpu registers
四、寄存器的種類
位——字節——字符(編碼)——字符集
8個——1000多個
32位(4字節)——64位
五、內存模型:Heap(堆) 用戶主動請求而劃分出來的內存區域
0*1000——>0*8000
低位——>高位
內存
六、stack(棧) 由函數運行而臨時佔用的區域
內存:0*1000——>0*1020——>0*8000
Heap Stack
Heap——>Stack——>main
frame(幀)
Heap——>Stack——>add_a add_b——>main
push 入棧(“生成新的幀”) 函數調用
pop 出棧
後進先出的數據結構
七、CPU指令
彙編語言
CPU指令與運算子
push指令 將運算子放入Stack
call指令 調用函數
mov指令 將一個值寫入某個寄存器
add指令 兩個運算子相加,並將結果寫入第一個運算子
pop指令
ret指令
位(bit)、字節(byte)、字符、編碼之間的關係
1、位:數據存儲的最小單位,0或1就是一位
2、字節:1byte=8bit
3、字符:a, A, +, *, 均表示一個字符
ASCII碼:一個英文字母字符佔一個字節,一箇中文字符佔兩個字節
utf編碼:一個漢子字符3個字節
gbk編碼:一個漢子字符2個字節
4、字符集
5、編碼
程序設計:
確定數據結構——>算法——>編碼——>調試——>整理文檔資料
while循環
until循環
2.2 標識符、常量和變量
1、字母,數字,下劃線 關鍵字
1-2 主函數和 hello world 程序
待更:20190218