機(jī)器語(yǔ)言(二進(jìn)制語(yǔ)言編寫(xiě)) -->匯編語(yǔ)言(形象化二進(jìn)制)-->高級(jí)語(yǔ)言
匯編語(yǔ)言的特點(diǎn):
1>與硬件有關(guān)(不同的CPU有不同的機(jī)器指令)
2>與機(jī)器指令一一對(duì)應(yīng)
3>須詳細(xì)描述“如何做”
4>可移植性差
Inter微處理器
1>微處理器結(jié)構(gòu)
8086微處理器結(jié)構(gòu):
1.1 CPU功能結(jié)構(gòu):
總線(xiàn)接口部件BIU(Bus Interface Unit):總線(xiàn)接口單元(完成CPU與主存儲(chǔ)器或外圍設(shè)備之間的信息傳遞)
執(zhí)行部件EU(Execute Unit):執(zhí)行單元(完成指令的執(zhí)行)
注意:兩個(gè)單元獨(dú)立,并行工作煞聪,使指令的讀取與執(zhí)行部分重疊斗躏,提高指令的執(zhí)行速度 --- 指令的流水線(xiàn)結(jié)構(gòu)
1.2 CPU寄存器結(jié)構(gòu):
數(shù)據(jù)寄存器(通用數(shù)據(jù)寄存器)
指針及變址寄存器
段寄存器
控制寄存器
AX 累加器:存放操作數(shù)和結(jié)果,乘除運(yùn)算米绕、I/O指令中特指
BX 基址寄存器:存放偏移量
CX 技術(shù)寄存器:循環(huán)中計(jì)數(shù)
DX 數(shù)據(jù)寄存器:雙字長(zhǎng)時(shí)與AX組合成32位數(shù)瑟捣,乘除運(yùn)算馋艺、I/O指令中特指
注意:可以以字(16)或字節(jié)(8)形式訪(fǎng)問(wèn)栅干,例如,AX的高字節(jié)捐祠、低字節(jié)分別用AH碱鳞、AL表示
SP 堆棧指針寄存器:內(nèi)容始終只想棧頂
BP 基址指針寄存器:存放地址的偏移量
SI 源變址寄存器
DI 目的變址寄存器
注意:變址寄存器:存放地址的偏移量,也可存放操作數(shù)踱蛀,但只能以字為單位訪(fǎng)問(wèn)(16位)
CS 代碼段寄存器
DS 數(shù)據(jù)段寄存器
SS 棧段寄存器
ES 附加段寄存器
注意:段寄存器存放相應(yīng)段的段基址(段首址的高16位)
IP 指令指針寄存器:程序計(jì)數(shù)器窿给,指向下一條指令在代碼段中的偏移量(非常重要)
PSW 程序狀態(tài)寄存器:記錄系統(tǒng)運(yùn)行中的各種狀態(tài)和信息贵白。由各種標(biāo)志位構(gòu)成,反映運(yùn)算后的結(jié)果特征崩泡,將影響某些指令(如條件轉(zhuǎn)移指令)的執(zhí)行禁荒。
2> 內(nèi)存儲(chǔ)器結(jié)構(gòu)
8086內(nèi)存儲(chǔ)器組織:有20條地址線(xiàn),最大存儲(chǔ)空間為1MB角撞。
2.1 以字節(jié)(8位)為單位編址呛伴,一個(gè)字節(jié)數(shù)據(jù)占一個(gè)存儲(chǔ)單元
2.2 以字(16位)為單位存儲(chǔ)數(shù)據(jù)時(shí),占相鄰兩個(gè)單元谒所,高8位存放在高地址字節(jié)热康,低8位存放在低地址字節(jié)
2.3 字單元的地址用它的低地址來(lái)表示
2.4 訪(fǎng)主存指令中應(yīng)指出是字節(jié)訪(fǎng)問(wèn)還是字訪(fǎng)問(wèn)
2.5 字單元的地址一般為偶數(shù)值
3>段概念的引進(jìn)
16位寄存器如何表示20為的地址?
答:采用存儲(chǔ)器地址分段的方法
3.1 段是最大長(zhǎng)度為64KB的內(nèi)存儲(chǔ)塊
3.2 段的起始地址(段首址)低4位必須為0(人為分段)
3.3 用戶(hù)可以同時(shí)使用4個(gè)段劣领,段間可以鄰接姐军、部分重疊、重疊或不相鄰
3.3.1 代碼段存放當(dāng)前程序的指令代碼
3.3.2 數(shù)據(jù)段存放程序涉及的源數(shù)據(jù)或結(jié)果
3.3.3 堆棧段是以“先入后出”為原則的數(shù)據(jù)區(qū)
3.3.4 附加段是輔助數(shù)據(jù)區(qū)尖淘,存放串或其他數(shù)據(jù)
4>內(nèi)存儲(chǔ)器的地址
4.1 物理地址:每個(gè)存儲(chǔ)單元的20位實(shí)際地址奕锌,有唯一性,訪(fǎng)問(wèn)主存時(shí)必須用物理地址
4.2 邏輯地址:每個(gè)存儲(chǔ)單元的地址用兩個(gè)部分表示:段基址(段首址的高16位)和偏移量(段內(nèi)某單元相對(duì)段首址的地址差)
4.3 物理地址 = 段基址*16+偏移量
書(shū)寫(xiě)形式:段基址:偏移量
4.4 段寄存器中存放的是相應(yīng)段的段基址值
4.5 BX/SP/...IP寄存器中存放的是偏移量
5>堆棧
6>I/O結(jié)構(gòu)