freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[工學(xué)]匯編語(yǔ)言語(yǔ)法介紹-展示頁(yè)

2024-10-28 00:07本頁(yè)面
  

【正文】 典型的調(diào)試器有 DOS中的 Debug, Borland公司的 Turbo Debug,Microsoft 公司的 Code View。我們稱(chēng)這類(lèi)錯(cuò)誤為邏輯錯(cuò)誤,它們是匯編器和連接器都無(wú)法發(fā)現(xiàn)的。 常用的連接程序是 ,它在 DOS系統(tǒng)和 Microsoft Masm 包中都有提供。這樣,你可以一次編寫(xiě)程序的一部分,通過(guò)結(jié)合,將幾個(gè)目標(biāo)模塊合并,產(chǎn)生一個(gè)完整的運(yùn)行模塊。 連接器的第二個(gè)任務(wù)是可將幾個(gè)目標(biāo)模塊結(jié)合成一個(gè)可執(zhí)行的模塊。目標(biāo)程序必須經(jīng)過(guò)連接器連接,生成附帶重定位信息的可執(zhí)行程序( EXE文件或 COM文件)才能運(yùn)行。 常用的匯編器有 Masm、 Turbo ASM等。 匯編器用于完成這步工作。 DOS下常用的有 Edit、 PE2等。 2) 編輯 根據(jù)設(shè)計(jì)方案,創(chuàng)建匯編語(yǔ)言源程序。 名詞解釋 匯編程序(即匯編器)總的功能就是將用 ASCII碼形式的匯編源文件轉(zhuǎn)換成二進(jìn)制機(jī)器代碼組成的目標(biāo)文件。 目標(biāo)程序: 由源程序經(jīng)過(guò)匯編而得到的一組機(jī)器代碼叫目標(biāo)程序,如 OBJ文件。第四章 匯編語(yǔ)言語(yǔ)法 ? 匯編語(yǔ)言概念 ? 匯編語(yǔ)言的編程過(guò)程 ? 匯編語(yǔ)言程序結(jié)構(gòu) ? 匯編語(yǔ)言程序語(yǔ)法 ? 匯編語(yǔ)言偽指令 匯 編: 將匯編語(yǔ)言編寫(xiě)的程序翻譯成機(jī)器代碼組成的目標(biāo)程序的過(guò)程 成為匯編 匯編程序: 實(shí)現(xiàn)自動(dòng)完成匯編過(guò)程的軟件叫匯編程序或匯編器,如。 源 程 序: 按匯編語(yǔ)言語(yǔ)法規(guī)則編寫(xiě)的文本文件叫匯編語(yǔ)言源程序或匯編語(yǔ)言程序,如 ASM文件。 連接程序: 將目標(biāo)文件與庫(kù)文件或其它目標(biāo)文件連接形成可執(zhí)行文件的軟件叫連接程序 可執(zhí)行程序:由機(jī)器代碼組成的可提供操作系統(tǒng)執(zhí)行的文件叫可執(zhí)行程序或可執(zhí)行文件,典型的如 COM文件、 EXE文件。 其具體功能包括以下幾方面: 1) 檢查源程序中的語(yǔ)法錯(cuò)誤,并給出錯(cuò)誤信息 2) 產(chǎn)生源程序的目標(biāo)程序,并給出列表文件 3) 支持地址和數(shù)據(jù)的符號(hào)變量表示 4) 支持對(duì)內(nèi)存的管理 5) 支持多種類(lèi)型的數(shù)據(jù)表示 6) 支持程序的模塊化組織 7) 支持宏匯編、條件匯編等高級(jí)操作 匯編程序的主要功能 一般來(lái)說(shuō),開(kāi)發(fā)匯編語(yǔ)言程序有以下面五個(gè)步驟: 1) 設(shè)計(jì) 根據(jù)任務(wù)要求,設(shè)計(jì)程序結(jié)構(gòu)、算法,畫(huà)出流程圖。 它由程序員通過(guò)文本編輯器來(lái)完成。 3) 匯編 將匯編語(yǔ)言源程序源程序轉(zhuǎn)化為機(jī)器可以理解的目標(biāo)程序。匯編器可以發(fā)現(xiàn)源程序中的語(yǔ)法錯(cuò)誤,如格式錯(cuò)誤、非法指令、操作數(shù)類(lèi)型不匹配等,提示程序員對(duì)源程序加以修改,并重新匯編。 匯編語(yǔ)言程序的開(kāi)發(fā)過(guò)程和工具 4) 連接 匯編后生成的目標(biāo)程序雖然記載了 CPU可理解的機(jī)器代碼,但它缺少 DOS所需要的重定位信息,所以并不能直接運(yùn)行。 連接器的一個(gè)任務(wù)就是從目標(biāo)模塊中產(chǎn)生一個(gè)運(yùn)行模塊,并使其具有可重定位性。并同樣使其具有可重定位性。 連接器可以發(fā)現(xiàn)源程序中的連接錯(cuò)誤,如段的溢出或覆蓋,不存在或不匹配的模塊、不存在或不匹配的標(biāo)號(hào)、變量等。 5) 調(diào)試 完成設(shè)計(jì)、編輯、匯編、連接后得到的可執(zhí)行程序中可能存在一些錯(cuò)誤(Bug),這些錯(cuò)誤可能是設(shè)計(jì)缺陷或編輯時(shí)的筆誤,它們可能使程序運(yùn)行出現(xiàn)結(jié)果錯(cuò)誤、死機(jī)甚至其它無(wú)法預(yù)測(cè)的后果。這類(lèi)錯(cuò)誤只能靠程序員憑借調(diào)試器對(duì)可執(zhí)行程序進(jìn)行耐心細(xì)致的跟蹤調(diào)試,才能逐一排除。它們都具有程序加載、運(yùn)行、單步跟蹤、斷點(diǎn)跟蹤、查看修改存儲(chǔ)器、查看修改寄存器、反匯編等基本功能。 stack segment para stack 39。 ;定義堆棧段 db 1024 dup (?) stack ends data segment para 39。 ;定義數(shù)據(jù)段 hello db 39。, 0dh, 0ah, 39。 data ends code segment para 39。 ;定義代碼段 assume cs:code, ds:data, es:data, ss:stack main proc far start: push ds xor ax, ax push ax mov ax, data mov ds, ax lea dx, hello mov ah, 9 int 21h ret main endp code ends end main ;程序起始地址 匯編語(yǔ)言源程序示例 匯編語(yǔ)言源程序采用分段結(jié)構(gòu),由若干個(gè)段構(gòu)成一個(gè)源程序。源程序的一般格式為 NAMEl SEGMENT 語(yǔ)句 . . . NAMEl ENDS NAME2 SEGMENT 語(yǔ)句 . . . NAME2 ENDS END <程序起始地址標(biāo)號(hào)> 每個(gè)段有一個(gè)名字,以 SEGMENT語(yǔ)句作為段的開(kāi)始,以 ENDS語(yǔ)句作為段的結(jié)束。 整個(gè)源程序以 END語(yǔ)句作為結(jié)束。匯編程序把它們翻譯成機(jī)器代碼。如 MOV, ADD, JMP等等 指示語(yǔ)句 指示性語(yǔ)句 , 又稱(chēng)偽語(yǔ)句 、 偽操作 , 其構(gòu)成主體是偽指令 , 它們告訴匯編程序做什么 。 例如: COUNT DB ? 1) 指令語(yǔ)句的格式為 標(biāo)號(hào): 指令助記符 操作數(shù), … ,操作數(shù) ;注釋 它由四部分組成,各部分之間用空格或制表符 (TAB)分隔。一個(gè)語(yǔ)句行可以只由一個(gè)標(biāo)號(hào)構(gòu)成。 ③ 操作數(shù):其個(gè)數(shù)和類(lèi)型由指令助記符決定。 匯編語(yǔ)言語(yǔ)句的基本格式 匯編語(yǔ)言語(yǔ)句的基本格式 2) 指示性語(yǔ)句的格式為 名稱(chēng) 偽指令 操作數(shù), … ,操作數(shù) ;注釋 它由四部分組成,各部分之間用空格或制表符 (TAB)分隔。 ② 偽指令:說(shuō)明該行的操作任務(wù)。 ④ 注釋?zhuān)阂苑痔?hào) (; )開(kāi)始,是對(duì)該語(yǔ)句行的文字解釋?zhuān)瑥姆痔?hào)開(kāi)始到本行結(jié)束的內(nèi)容全部被匯編器忽略,對(duì)程序的匯編及執(zhí)行都沒(méi)有影響。 匯編語(yǔ)言保留字 下列符號(hào)在匯編語(yǔ)言中有特殊的意義,稱(chēng)為 保留字 。 ① 指令助記符 AAA CLD ESC JAE JNA JNP LDS MOV POPF RET STC AAD CLI HLT JB JNAE JNS LEA MOVS PUSH ROL STD AAM CMC IDIV JBE JNB JNZ LES MUL PUSHF ROR STI AAS CMP IMUL JCXZ JNBE JP LOCK NEG RCL SAHF STOS ADC CMPS IN JE JNE JPE LODS NIL RCR SAL SUB ADD CWD INC JG JNG JPO LOOP NOP REP SAR TEST AND DAA INT JGE JNGE JS LOOPNE OR REPNE SCAS XCHG CBW DEC IRET JLE JNLE JO LOOPNZ OUT REPNZ SHL XLAT CLC DIV JA JMP JNO LAHF LOOPZ POP REPZ SHR XOR ② 寄存器名 AH BH CH DH AL BL CL DL AX BX CX DX SI DI BP SP CS DS SS ES ③ 偽指令 ASSUME END EXTRN NOSEGFIX PUBLIC MACRO CODEMACRO ENDM GROUP ORG PURGE ENDM DB ENDP LABEL PROC RECORD DD ENDS MODRM RELB SEGFIX DW EQU NAME RELW SEGMENT ④ 其它 ABS EQ INPAGE MASK NOHING PROCLEN STACK AT FAR LE MEMORY OFFSET PTR THIS BYTE GE LENGTH MOD PAGE SEG TYPE COMMON
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1