• <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>

            Benjamin

            靜以修身,儉以養德,非澹薄無以明志,非寧靜無以致遠。
            隨筆 - 397, 文章 - 0, 評論 - 196, 引用 - 0
            數據加載中……

            linux匯編之IA32數據格式及數據操作

            IA32數據格式

            類型                         Intel數據類型                         匯編代碼后綴

            Char                        字節                                      b(1字節)

            Short                                                               w(2字節)

            Int                          雙字                                      l4字節)

            Long int                  雙字                                      l4字節)

            Long long int               -                                         4字節

            Char*                    雙字                                        l4字節)

            Float                     單精度                                     s4字節)

            Double                  雙精度                                    l8字節)

            Long double          擴展精度                                   t1012字節)

            Char*這里指的是所有指針類型,注意:c語言新增加的long long是八字節,但是硬件IA32不支持這個類型。

            例如:mo
             

            寄存器(832位的寄存器,均以%e開頭)

            %eax%ecx%edx:調用者保存(數據)寄存器,當過程p調用qq可以覆蓋這些寄存器,但是不會改變p中的數據。

            %ebx%esi%edi:被調用者保存(數據)寄存器,當過場p調用qq必須在覆蓋這些寄存器數據前,要把它們保存到棧,
                                  并在調用結束返回時恢復它們,這些數據
            p或其他過程需要它們。

            %esp%ebp:有關棧指針的

             

             操作數分三種:立即數即常數,用$開頭,后面加一個整數表示;
                                 寄存器數,對字操作而言表示某個寄存器中的保存的值;對字節操作而言是8個單字節寄存器中的一個,比如:%al(eax寄存器中的低8位)
                                 存儲器引用,根據計算出的有效地址來訪問存儲器的某個位置;包括四部分:偏移數(lmm)、基地址Eb、變址寄存器Ei、比例因子s

            有關操作數格式表

            類型       格式                    操作數值                              名稱

            立即數     $Imm                 Imm                                   立即數尋址

            寄存器     Ea                           R[Ea]                                 寄存器尋址

            存儲器     Imm                   M[Imm]                              絕對尋址

            存儲器     Ea                M[R[Ea]]                             間接尋址

            存儲器     Imm(Eb)             M[Imm+R[Eb]]                    (基地址+偏移量)尋址

            存儲器     (Eb,Ei)                M[R[Eb]+R[Ei]]                   變址尋址

            存儲器     Imm(Eb,Ei)          M[Imm+R[Eb]+R[Ei]]          變址尋址

            存儲器     (,Ei,s)                 M[R[Eb].s]                         比例變址尋址

            存儲器     Imm(,Ei,,,s)         M[Imm+R[Eb].s]                比例變址尋址

            存儲器     (Eb,Ei,s)             M[R[Eb]+R[Ei].s]                比例變址尋址

            寄存器     Imm(Eb,Ei,s)       M[Imm+R[Eb]+R[Ei].s]       比例變址尋址

            S必須是1248中的一個,最后一個常用在數組中

            例如:地址0x100的值是56,那么操作數0x100的值就是56,屬于絕對尋址;$0x100的值0x100,是立即數尋址;

             

             

            posted on 2013-01-16 21:51 Benjamin 閱讀(956) 評論(0)  編輯 收藏 引用 所屬分類: linux(反)匯編

            久久国产高清字幕中文| 精品熟女少妇av免费久久| A级毛片无码久久精品免费| 久久亚洲国产成人精品无码区| 伊人色综合久久天天人守人婷 | 亚洲国产精品综合久久一线| 中文成人久久久久影院免费观看| 久久香蕉国产线看观看精品yw| 一本久久久久久久| 久久毛片一区二区| 久久综合狠狠综合久久激情 | 国产精品乱码久久久久久软件 | 久久有码中文字幕| 亚洲αv久久久噜噜噜噜噜| 99久久国产综合精品成人影院| 久久福利资源国产精品999| 天天综合久久久网| 日产精品99久久久久久| 午夜精品久久影院蜜桃| 91精品国产高清久久久久久io | 久久亚洲高清综合| 999久久久国产精品| 久久国产乱子伦免费精品| 久久综合九色综合欧美就去吻| 久久久精品免费国产四虎| 性欧美丰满熟妇XXXX性久久久| 一本综合久久国产二区| 久久久久国产一区二区三区| 久久免费线看线看| 人妻丰满AV无码久久不卡| 久久午夜无码鲁丝片秋霞| 女同久久| 久久亚洲AV永久无码精品| 久久久久四虎国产精品| 久久精品国产精品亚洲精品| 久久精品a亚洲国产v高清不卡| 亚洲精品乱码久久久久久蜜桃不卡 | 久久久精品人妻一区二区三区四| 伊人久久精品无码av一区| 99久久精品国产一区二区| 久久久久久国产精品无码下载 |