版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
宋軍計(jì)算機(jī)學(xué)院信息安全系songjun@12023/10/11匯編語(yǔ)言程序設(shè)計(jì)教學(xué)安排2023/10/112課時(shí)48學(xué)時(shí):課堂教學(xué)(32)+上機(jī)實(shí)踐(16)成績(jī)?cè)u(píng)定平時(shí)成績(jī):40%考試成績(jī):60%考試方式閉(開(kāi))卷筆試:選擇題、程序閱讀、程序設(shè)計(jì)3次作業(yè)+Project參考教材2023/10/113高級(jí)語(yǔ)言、匯編語(yǔ)言、機(jī)器語(yǔ)言匯編語(yǔ)言(低級(jí)語(yǔ)言)C語(yǔ)言(高級(jí)語(yǔ)言)機(jī)器指令(機(jī)器語(yǔ)言)2023/10/214課程說(shuō)明2023/10/215匯編語(yǔ)言程序設(shè)計(jì)Assembly
Language
and
Programming掌握匯編語(yǔ)言及其程序設(shè)計(jì)方法,了解計(jì)算機(jī)軟硬件的若干底層細(xì)節(jié)和基本原理。為后續(xù)課程和工程應(yīng)用打下重要的專(zhuān)業(yè)基礎(chǔ)。加密解密,系統(tǒng)安全,逆向工程!預(yù)備知識(shí)2023/10/216Win32:Windows
32位匯編語(yǔ)言程序設(shè)計(jì)的原理、方法與技術(shù)CPU分層:DLL/MA/ISA層ISA-32CPU與IA-32IA-32是一類(lèi)ISA-32IA-32是CISC下的ISA匯編語(yǔ)言程序設(shè)計(jì)最古老的程序設(shè)計(jì)語(yǔ)言深入理解計(jì)算機(jī)體系結(jié)構(gòu)和操作系統(tǒng)高級(jí)匯編語(yǔ)法,MASM,TASM接近MASM什么是匯編語(yǔ)言匯編語(yǔ)言是一種面向機(jī)器的低級(jí)程序設(shè)計(jì)語(yǔ)言匯編語(yǔ)言以助記符形式表示每一條計(jì)算機(jī)指令助記符:易記憶、描述指令功能和指令操作數(shù)匯編指令:用助記符表示的指令匯編語(yǔ)言:匯編格式指令、編寫(xiě)規(guī)則匯編程序:稱(chēng)匯編語(yǔ)言源程序(.ASM)2023/10/217編譯和調(diào)試環(huán)境編輯器、編譯器、鏈接器和調(diào)試器編輯器創(chuàng)建源文件,如文本或代碼編輯器編譯器把匯編源程序轉(zhuǎn)換為二進(jìn)制目標(biāo)文件
鏈接器是把編譯器創(chuàng)建的多個(gè)單獨(dú)的文件組合鏈接成可執(zhí)行文件調(diào)試器查看程序運(yùn)行中寄存器和內(nèi)存狀態(tài)編輯器編譯器.ASM
.OBJ.EXE2023/10/218鏈接器調(diào)試器工作模式2023/10/21916位實(shí)地址模式與8086兼容的模式,僅低20位地址線起作用,能尋址第一個(gè)1MB的內(nèi)存空間,MS
DOS運(yùn)行在實(shí)模式下32位保護(hù)模式工作于32位80x86
CPU,提供對(duì)程序和數(shù)據(jù)進(jìn)行安全檢查的保護(hù)機(jī)制,如Windows
9x/NT/2000等32位操作系統(tǒng)虛擬8086模式
在Windows
9x下,運(yùn)行一個(gè)DOS應(yīng)用程序,該程序即運(yùn)行在虛擬8086模式下什么是匯編語(yǔ)言機(jī)器指令助記符2023/10/2110匯編指令匯編語(yǔ)言ASM:Assembly
Language匯編語(yǔ)言與機(jī)器語(yǔ)言機(jī)器語(yǔ)言一種二進(jìn)制(十六進(jìn)制)語(yǔ)言,純粹的數(shù)字形式特定的處理器才能理解匯編語(yǔ)言使用助記符的語(yǔ)句匯編指令與機(jī)器指令一一對(duì)應(yīng)2023/10/2111匯編語(yǔ)言與高級(jí)語(yǔ)言高級(jí)語(yǔ)言與匯編語(yǔ)言及機(jī)器語(yǔ)言是一對(duì)多的關(guān)系
一條簡(jiǎn)單的C語(yǔ)言會(huì)被擴(kuò)展成多條匯編語(yǔ)言或機(jī)器語(yǔ)言指令moveax,
y;將y送至eax寄存器addeax,
4;eax寄存器加4movebx,
3;立即數(shù)送至ebx寄存器imulebx;eax與ebx相乘movx,
eax;將eax寄存器存放的結(jié)果送至xx
=
(
y
+
4
)*32023/10/2112匯編語(yǔ)言和高級(jí)語(yǔ)言(cont.)2023/10/2113匯編語(yǔ)言功能有限,涉及硬件細(xì)節(jié)↘匯編語(yǔ)言程序的通用性、可移植性較差↘編寫(xiě)程序比較繁瑣,調(diào)試起來(lái)也比較困難高級(jí)語(yǔ)言功能強(qiáng)大,與具體計(jì)算機(jī)無(wú)關(guān)↗高級(jí)語(yǔ)言程序可在多種計(jì)算機(jī)上編譯后執(zhí)行↗類(lèi)似自然語(yǔ)言的語(yǔ)法,易于掌握和應(yīng)用匯編語(yǔ)言:×高級(jí)語(yǔ)言:√匯編語(yǔ)言和高級(jí)語(yǔ)言(
cont.)匯編語(yǔ)言本質(zhì)上就是機(jī)器語(yǔ)言↗可以直接、有效地控制計(jì)算機(jī)硬件↗易于產(chǎn)生速度快、容量小的高效率目標(biāo)程序高級(jí)語(yǔ)言不針對(duì)具體計(jì)算機(jī)系統(tǒng)↘不易直接控制計(jì)算機(jī)的各種操作↘目標(biāo)程序比較龐大、運(yùn)行速度較慢匯編語(yǔ)言:√高級(jí)語(yǔ)言:×2023/10/2114匯編語(yǔ)言和高級(jí)語(yǔ)言(
cont.)2023/10/2115匯編語(yǔ)言的優(yōu)點(diǎn)直接控制計(jì)算機(jī)硬件部件編寫(xiě)在“時(shí)間”和“空間”兩方面最有效的程序匯編語(yǔ)言的缺點(diǎn)需要熟悉計(jì)算機(jī)硬件系統(tǒng)、考慮許多細(xì)節(jié)編寫(xiě)繁瑣,調(diào)試、維護(hù)、交流和移植困難匯編語(yǔ)言:?高級(jí)語(yǔ)言:?匯編語(yǔ)言和高級(jí)語(yǔ)言(
cont.)2023/10/2116匯編語(yǔ)言的優(yōu)點(diǎn)使得它在程序設(shè)計(jì)中占有重要的位置,是不可被取代的匯編語(yǔ)言的缺點(diǎn)使得人們主要采用高級(jí)語(yǔ)言進(jìn)行程序開(kāi)發(fā)工作有時(shí)需要采用高級(jí)語(yǔ)言和匯編語(yǔ)言混合編程的方法,互相取長(zhǎng)補(bǔ)短,更好地解決實(shí)際問(wèn)題混合編程取長(zhǎng)補(bǔ)短混和編程—C內(nèi)聯(lián)匯編
asm{//關(guān)中斷climov
eax,
cr0and
eax,
~0x10000mov
cr0,
eax}*(
pBase
+
uIndex
)
=*((PULONG)pOutputBuffer);
asm{//開(kāi)中斷mov
eax,
cr0or eax,
0x10000mov
cr0,
eaxsti}2023/10/2117匯編語(yǔ)言和高級(jí)語(yǔ)言2023/10/2118匯編語(yǔ)言的主要特點(diǎn)2023/10/2119與機(jī)器相關(guān)性匯編語(yǔ)言程序與處理器指令系統(tǒng)密切相關(guān)通用性和可移植性低執(zhí)行效率高程序員可直接、有效地控制系統(tǒng)硬件形成的可執(zhí)行文件運(yùn)行速度快、占用內(nèi)存量少編寫(xiě)程序的復(fù)雜性匯編指令單一、具體,源代碼編寫(xiě)繁瑣程序調(diào)試?yán)щy匯編語(yǔ)言的應(yīng)用場(chǎng)合2023/10/2120適用的領(lǐng)域要有較快的執(zhí)行時(shí)間,或者占用較小的存儲(chǔ)空間與計(jì)算機(jī)硬件密切相關(guān),要直接有效地控制硬件大型軟件需要提高性能、優(yōu)化處理的部分沒(méi)有合適的高級(jí)語(yǔ)言、或只能采用匯編語(yǔ)言的時(shí)候不宜使用的領(lǐng)域大型軟件的整體開(kāi)發(fā)沒(méi)有特殊要求的一般應(yīng)用系統(tǒng)的開(kāi)發(fā)分析具體系統(tǒng)尤其是該系統(tǒng)的低層軟件、加密解密軟件、分析和防治計(jì)算機(jī)病毒等等幾個(gè)問(wèn)題2023/10/2121本課程能學(xué)到什么?將了解到高級(jí)語(yǔ)言編譯器(例如c)是如何將源代碼語(yǔ)句翻譯成匯編語(yǔ)言和機(jī)器語(yǔ)言的。將了解到高級(jí)語(yǔ)言是如何在機(jī)器語(yǔ)言層次實(shí)現(xiàn)算術(shù)表達(dá)式、循環(huán)和邏輯結(jié)構(gòu)。將學(xué)習(xí)匯編語(yǔ)言代碼與c程序之間的接口。將編寫(xiě)全新的匯編語(yǔ)言程序需要具備什么背景知識(shí)?一門(mén)大學(xué)計(jì)算機(jī)程序設(shè)計(jì)課程:C語(yǔ)言如何學(xué)習(xí)2023/10/2122目標(biāo):Win32匯編IA-32:8086、16位Windows
API控制臺(tái)程序,非界面方法:閱讀+實(shí)踐由簡(jiǎn)到繁:一口吃不成胖子對(duì)照高級(jí)語(yǔ)言(C語(yǔ)言)熟讀唐詩(shī)三百首,不會(huì)寫(xiě)詩(shī)也會(huì)吟。學(xué)習(xí)工具反匯編器
IDAPro開(kāi)發(fā)平臺(tái)
MS
VisualStudio2023/10/2123虛擬機(jī)2023/10/2124L0語(yǔ)言與L1語(yǔ)言假設(shè):L0語(yǔ)是存粹的機(jī)器語(yǔ)言,L1語(yǔ)言是基于L0的更加人性化的語(yǔ)言解釋方式與翻譯方式
解釋方式:用L0語(yǔ)言的解釋程序?qū)1程序的每條指令解碼并執(zhí)行
翻譯方式:用L0程序?qū)⒄麄€(gè)L1源程序翻譯成L0程序,再執(zhí)行虛擬機(jī)VM1(L1)程序在虛擬機(jī)VM0(L0)執(zhí)行,例如Java虛擬機(jī)(JVM)虛擬機(jī)層次高級(jí)語(yǔ)言5th匯編語(yǔ)言4th操作系統(tǒng)3th指令集體系結(jié)構(gòu)
2nd微結(jié)構(gòu)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度新能源車(chē)輛技術(shù)研發(fā)與制造合同3篇
- 2024幼兒園教職工聘任與管理綜合服務(wù)合同范本3篇
- 2024年簡(jiǎn)易鋼材配送合同
- 會(huì)計(jì)法規(guī)培訓(xùn)模板
- 雙十一營(yíng)銷(xiāo)策略分析模板
- 餐具廚具銷(xiāo)售員工作總結(jié)
- 航空航天會(huì)計(jì)工作總結(jié)
- 金融行業(yè)分析師培訓(xùn)總結(jié)
- 湘中幼兒師范高等專(zhuān)科學(xué)?!督逃?jīng)典名著選讀》2023-2024學(xué)年第一學(xué)期期末試卷
- 財(cái)務(wù)工作年終績(jī)效總結(jié)
- 2025年競(jìng)聘醫(yī)院內(nèi)科醫(yī)生崗位演講稿模版(3篇)
- 虛擬貨幣地址分析技術(shù)的研究-洞察分析
- 綠色供應(yīng)鏈管理制度內(nèi)容
- 無(wú)錫市區(qū)2024-2025學(xué)年四年級(jí)上學(xué)期數(shù)學(xué)期末試題一(有答案)
- 心理學(xué)基礎(chǔ)知識(shí)考試參考題庫(kù)500題(含答案)
- 血液凈化中心院內(nèi)感染控制課件
- 一年級(jí)數(shù)學(xué)(上)計(jì)算題專(zhuān)項(xiàng)練習(xí)集錦
- 消防安全應(yīng)急預(yù)案下載
- 年產(chǎn)1.5萬(wàn)噸長(zhǎng)鏈二元酸工程建設(shè)項(xiàng)目可研報(bào)告
- 《北航空氣動(dòng)力學(xué)》課件
- 紡織廠消防管道安裝協(xié)議
評(píng)論
0/150
提交評(píng)論