• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            天下

            記錄修行的印記

            匯編學(xué)習(xí)筆記1


            運行時棧是由CPU直接管理的內(nèi)存數(shù)組,它使用兩個寄存器:SS和ESP (Extended stack pointer)。
            在保護模式下,SS寄存器存放的是段選擇器,用戶模式程序不應(yīng)對其進行修改。
            ESP寄存器存放的是指向堆棧內(nèi)特定位置的一個32位偏移值。它指向最后壓入(或添加)到堆棧上的數(shù)據(jù).
            我們很少需要直接操縱ESP的值,相反,ESP寄存器的值通常是由CALL,RET,PUSH和POP等指令間接修改的。

            壓棧操作
            32位的壓棧操作(PUSH)操作將使ESP的值減4,并將值拷貝到堆棧指針所指向的位置.
            出棧操作
            32位的出棧(POP)操作從堆棧頂端移走一個值,并將值置于寄存器或變量中,在值從棧頂彈出之后,ESP的值加4.

            PROC偽指令
            定義子過程的偽指令,以RET語句結(jié)束的命名語句塊.

            proc_name PROC
                param1:DWORD,        ;參數(shù)1
                param2:PTR BYTE,    ;參數(shù)2
                param3:PTR WORD    ;參數(shù)3
                LOCAL localvar1:BYTE    ;局部變量1
                LOCAL localvar2:WORD    ;局部變量2
                ;.
                RET    
                ;..
                RET    ;(
            return from procedure)以強制CPU返回到過程被調(diào)用的地方
            proc_name ENDP

            CALL指令
            CALL指令將返回地址(通常是CALL指令的下一條指令,CALL指令的機器碼需要5字節(jié))壓入堆棧并將被調(diào)用過程的地址拷貝到指令指針寄存器EIP中,當過程返回時,RET指令從堆棧中彈出地址并送到指令指針寄存器中(ESP所指向堆棧值被彈出并送到EIP).
            CPU總是執(zhí)行指令指針寄存器EIP所指向的內(nèi)存地址處的指令.

            RET指令
            在32位保護模式下
            CPU執(zhí)行RET指令時,相當于進行:
            pop EIP

            CPU執(zhí)行RET N指令時,這里N是一個自然數(shù),相當于進行:
            pop EIP
            add ebp,N


            局部標號和全局標號

            局部標號(以單個冒號結(jié)尾)在過程中使用.
            全局標號(以兩個冒號結(jié)尾)在全局使用.

            LOCAL 偽指令
            LOCAL偽指令在過程中聲明一個或多個局部變量
            LOCAL 變量名:類型

            如:
            MySub    PROC
                LOCAL var1:BYTE
                LOCAL var2:WORD
                ;.
                RET
            MySub ENDP

            posted on 2011-11-04 16:34 天下 閱讀(401) 評論(0)  編輯 收藏 引用 所屬分類: 匯編語言

            <2011年11月>
            303112345
            6789101112
            13141516171819
            20212223242526
            27282930123
            45678910

            導(dǎo)航

            統(tǒng)計

            常用鏈接

            留言簿(4)

            隨筆分類(378)

            隨筆檔案(329)

            鏈接

            最新隨筆

            搜索

            最新評論

            精品999久久久久久中文字幕| 久久精品国产精品亚洲下载 | 激情综合色综合久久综合| 亚洲国产精品一区二区久久| 一级做a爰片久久毛片16| 久久久久久国产精品美女| 欧美伊人久久大香线蕉综合| 久久久久久国产精品免费无码 | 久久夜色精品国产亚洲| 九九久久自然熟的香蕉图片| 99久久精品九九亚洲精品| 久久久久久久精品妇女99| 99久久国产主播综合精品| 亚洲人成电影网站久久| 91麻精品国产91久久久久| 亚洲愉拍99热成人精品热久久| 精品国产91久久久久久久| 精品熟女少妇AV免费久久 | 婷婷久久综合| 久久青青草原综合伊人| 麻豆一区二区99久久久久| 久久婷婷人人澡人人| 久久精品草草草| 精品无码久久久久国产| 亚洲伊人久久大香线蕉综合图片| 久久久久人妻一区精品果冻| 国产一区二区精品久久| 久久久久亚洲AV无码专区体验| 怡红院日本一道日本久久| 亚洲精品无码久久久久去q | 婷婷伊人久久大香线蕉AV| 国产精品久久久久久久人人看| 国产免费久久久久久无码| 久久99国产精品久久久| www久久久天天com| 韩国免费A级毛片久久| 无码精品久久久久久人妻中字| 久久综合给久久狠狠97色| 少妇久久久久久被弄高潮| 久久天天躁狠狠躁夜夜96流白浆 | 久久中文字幕人妻丝袜|