最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

匯編語言AND指令實現(xiàn)對兩個操作數(shù)進(jìn)行邏輯(按位)與操作

 更新時間:2020年01月19日 14:11:45   作者:Java入門基礎(chǔ)教程  
這篇文章主要介紹了匯編語言AND指令實現(xiàn)對兩個操作數(shù)進(jìn)行邏輯(按位)與操作,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

AND 指令在兩個操作數(shù)的對應(yīng)位之間進(jìn)行(按位)邏輯與(AND)操作,并將結(jié)果存放在目標(biāo)操作數(shù)中:

AND destination,source

下列是被允許的操作數(shù)組合,但是立即操作數(shù)不能超過 32 位:

AND reg, reg
AND reg, mem
AND reg, imm
AND mem, reg
AND mem, imm

操作數(shù)可以是 8 位、16 位、32 位和 64 位,但是兩個操作數(shù)必須是同樣大小。兩個操作數(shù)的每一對對應(yīng)位都遵循如下操作原則:如果兩個位都是 1,則結(jié)果位等于 1;否則結(jié)果位等于 0。

下表展示了兩個輸入位 X 和 Y,第三列是表達(dá)式 X^Y 的值:

X Y X^Y
0 0 0
0 1 0
1 0 0
1 1 1

AND 指令可以清除一個操作數(shù)中的 1 個位或多個位,同時又不影響其他位。這個技術(shù)就稱為位屏蔽,就像在粉刷房子時,用遮蓋膠帶把不用粉刷的地方(如窗戶)蓋起來。

例如,假設(shè)要將一個控制字節(jié)從 AL 寄存器復(fù)制到硬件設(shè)備。并且當(dāng)控制字節(jié)的位 0 和位 3 等于 0 時,該設(shè)備復(fù)位。那么,如果想要在不修改 AL 其他位的條件下,復(fù)位設(shè)備,可以用下面的指令:

and AL, 11110110b             ;清除位 0 和位 3 ,其他位不變

如,設(shè) AL 初始化為二進(jìn)制數(shù) 1010 1110,將其與 1111 0110 進(jìn)行 AND 操作后,AL 等于 1010 0110:

mov al,10101110b
and al, 11110110b    ;AL 中的結(jié)果 = 1010 0110

標(biāo)志位

AND 指令總是清除溢出和進(jìn)位標(biāo)志位,并根據(jù)目標(biāo)操作數(shù)的值來修改符號標(biāo)志位、零標(biāo)志位和奇偶標(biāo)志位。比如,下面指令的結(jié)果存放在 EAX 寄存器,假設(shè)其值為 0。在這種情況下,零標(biāo)志位就會置 1:

and eax,1Fh

將字符轉(zhuǎn)換為大寫

AND 指令提供了一種簡單的方法將字符從小寫轉(zhuǎn)換為大寫。如果對比大寫 A 和小寫 a 的 ASCII 碼,就會發(fā)現(xiàn)只有位 5 不同:

0  1  1  0  0  0  0  1 = 61h ('a')
0  1  0  0  0  0  0  1 = 41h ('A')

其他的字母字符也是同樣的關(guān)系。把任何一個字符與二進(jìn)制數(shù) 1101 1111 進(jìn)行 AND,則除位 5 外的所有位都保持不變,而位 5 清 0。下例中,數(shù)組中所有字符都轉(zhuǎn)換為大寫:

  .data  array BYTE 50 DUP(?)  .code      mov ecx,LENGTHOF array      mov esi,OFFSET

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 純匯編實現(xiàn)打飛機(jī)小游戲的示例代碼

    純匯編實現(xiàn)打飛機(jī)小游戲的示例代碼

    這篇文章主要介紹了純匯編實現(xiàn)打飛機(jī)小游戲的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • 從匯編代碼開始全面解析synchronized還原最真實的偏向鎖

    從匯編代碼開始全面解析synchronized還原最真實的偏向鎖

    這篇文章主要為大家介紹了從模板解釋器匯編源碼開始分析還原最真實的偏向鎖實現(xiàn),解釋monitorenter字節(jié)碼命令的方法開始,從匯編代碼開始全面解析synchronized
    2022-02-02
  • 16位匯編語言寄存器及指令整理(小結(jié))

    16位匯編語言寄存器及指令整理(小結(jié))

    這篇文章主要介紹了16位匯編語言寄存器及指令整理(小結(jié)),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • 匯編語言DOSBox及debug.exe在Windows64下環(huán)境搭建

    匯編語言DOSBox及debug.exe在Windows64下環(huán)境搭建

    這篇文章主要為大家介紹了匯編語言環(huán)境的搭建DOSBox及debug.exe在Windows64下安裝配置過程,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-11-11
  • 匯編語言80x86系統(tǒng)通用數(shù)據(jù)傳送指令詳解

    匯編語言80x86系統(tǒng)通用數(shù)據(jù)傳送指令詳解

    這篇文章主要為大家介紹了匯編語言80x86系統(tǒng)通用的數(shù)據(jù)傳送指令詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2021-11-11
  • 匯編語言編譯環(huán)境搭建過程

    匯編語言編譯環(huán)境搭建過程

    這篇文章主要介紹了匯編語言編譯環(huán)境搭建過程,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-01-01
  • 匯編用串檢測scasb尋找數(shù)的位置實現(xiàn)

    匯編用串檢測scasb尋找數(shù)的位置實現(xiàn)

    這篇文章主要介紹了匯編用串檢測scasb尋找數(shù)的位置實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • 匯編語言實現(xiàn)電子鬧鐘思路詳解

    匯編語言實現(xiàn)電子鬧鐘思路詳解

    這篇文章主要介紹了匯編語言實現(xiàn)電子鬧鐘思路詳解,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • 圖文詳解通俗易懂的匯編語言寄存器

    圖文詳解通俗易懂的匯編語言寄存器

    這篇文章主要為大家介紹了寄存器的內(nèi)容詳解,文中通過精美清晰的圖文方式讓你一看就通俗易懂,有需要的朋友可以借鑒參考學(xué)習(xí)下,希望能夠有所幫助
    2021-11-11
  • 匯編語言中的segment

    匯編語言中的segment

    segment是段的意思,是段定義偽指令,一個正常的應(yīng)用程序被由若干個 segment組成,接下來通過本文給大家介紹匯編語言中的segment,需要的朋友可以參考下
    2020-01-01

最新評論

龙口市| 长宁区| 朝阳县| 西城区| 佛教| 张家界市| 海口市| 资源县| 中山市| 峨山| 毕节市| 利川市| 南岸区| 澳门| 闸北区| 吉隆县| 梁山县| 鄱阳县| 石台县| 蒲江县| 靖安县| 繁峙县| 马边| 错那县| 阳新县| 泰来县| 苏州市| 清河县| 扶风县| 理塘县| 靖安县| 河东区| 汉川市| 鄂伦春自治旗| 铁岭市| 额敏县| 临高县| 石河子市| 巫溪县| 蒲城县| 大厂|