自考《匯編語言程序設(shè)計》學習方法

字號:

《匯編語言程序設(shè)計》的試驗考試比較靈活,考生應全面細致的掌握基本理論,充分理解每一條指令,并且能獨立編制程序。
    北京大學的考試環(huán)境:
    (1)操作系統(tǒng):DOS6.22
    (2)文本編輯器:EDIT.EXE
    (3)匯編程序:MASM.EXE
    (4)連接程序:LINK.EXE
    (5)調(diào)試程序:DEBUG.COM
    考試的主要內(nèi)容分三大部分:輸入、輸出、數(shù)制轉(zhuǎn)換
    一、顯示字符:“HELLO GOOD MORNING!”
    DATA SEGMENT
    NOTE DB‘HELLO GOOD MORING!’,‘?/p>
    DATA ENDS
    CODE SEGMENT
    ASSUME CS:CODE, DS:DATA
    BEGIN: MOV AX,DATA
    MOV DS,AX
    MOV DX,OFFSET NOTE
    MOV AH,09H
    INT 21H
    MOV AH,4CH
    INT 21H
    CODE ENDS
    END BEGIN
    二、顯示2位十六進制
    DATA SEGMENT
    NUM DB 52H
    DATA ENDS
    CODE SEGMENT
    ASSUME CS:CODE, DS:DATA
    START: MOV AX,DATA
    MOV DS,AX
    MOV BL,NUM
    MOV CH,2
    RO: MOV CL,4
    ROL BL,CL
    MOV DL,BL
    AND DL,0FH
    ADD DL,30H
    MOV AH,2
    INT 21H
    DEC CH
    JNE RO
    MOV AH,4CH
    INT 21H
    CODE ENDS
    END START
    三、顯示4位十六進制
    DATA SEGMENT
    NUM DW 3AFCH
    DATA ENDS
    CODE SEGMENT
    ASSUME CS:CODE, DS:DATA
    START: MOV AX,DATA
    MOV DS,AX
    MOV BX,NUM
    MOV CH,4
    RO: MOV CL,4
    ROL BX,CL
    MOV DL,BL
    AND DL,0FH
    CMP DL,9
    JLE ADDR
    ADD DL,7
    ADDR: ADD DL,30H
    MOV AH,2
    INT 21H
    DEC CH
    JNE RO
    MOV AH,4CH
    INT 21H
    CODE ENDS
    END START
    四、兩個2位數(shù)相加,顯示和(采用壓縮的BCD碼調(diào)整)
    CODE SEGMENT
    ASSUME CS:CODE
    START: MOV AL,36H
    ADD AL,48H
    DAA
    MOV BL,AL
    MOV CH,2
    RO: MOV CL,4
    ROL BL,CL
    MOV DL,BL
    AND DL,0FH
    ADD DL,30H
    MOV AH,2
    INT 21H
    DEC CH
    JNE RO
    MOV AH,4CH
    INT 21H
    CODE ENDS
    END START
    五、兩個4位十六進制數(shù)相加,顯示和
    DATA SEGMENT
    NUM DW 3A54H,648BH
    DATA ENDS
    CODE SEGMENT
    ASSUME CS:CODE, DS:DATA
    START: MOV AX,DATA
    MOV DS,AX
    MOV BX,NUM
    ADD BX,NUM+2
    MOV CH,4
    RO: MOV CL,4
    ROL BX,CL
    MOV DL,BL
    AND DL,0FH
    CMP DL,9
    JLE ADDR
    ADD DL,7
    ADDR: ADD DL,30H
    MOV AH,2
    INT 21H
    DEC CH
    JNE RO
    MOV AH,4CH
    INT 21H
    CODE ENDS
    END START
    說明:
    (1)以上只是最基礎(chǔ)的程序,希望大家一定要掌握,并能舉一反三,考試是綜合各方面內(nèi)容的,其程序不會少于100行
    (2)匯編考題范圍廣,我們不能像《微型計算機及其接口》一樣,死抱8255和8253就行,還希望大家能在考前多練習編程才可以
    (3)常用的DOS系統(tǒng)功能調(diào)用一定要熟悉,尤其是輸入、輸出方面的(教科書P168 ~ P172)
    試題舉例:
    (1)從鍵盤輸入2個十進制數(shù),其和用二進制顯示,其差用八進制顯示,其乘積用十六進制顯示
    (2)從鍵盤輸入1個字符串,統(tǒng)計其中的字符。大寫字母個數(shù)用二進制顯示,小寫字母個數(shù)用八進制顯示,數(shù)字的個數(shù)用十進制顯示,其他字符用十六進制顯示
    附:DEBUG的基本用法
    DEBUG是個調(diào)試軟件,能比較方便的找到錯誤,其功能非常強大,使用也比較復雜。我們只介紹簡單的用法(不會用DEBUG調(diào)試,并不影響考試)
    (1)-a匯編器,從100H開始
    (2)-g執(zhí)行,-g[地址斷點],執(zhí)行到[地址斷點]結(jié)束
    (3)-a100改100H處程序
    (4)-e101改101H地址處的內(nèi)容
    (5)-d100顯示內(nèi)存中的內(nèi)容;顯示機器指令
    (6)-u100機器指令〉匯編指令
    (7)-q退出