zoukankan      html  css  js  c++  java
  • 学习:逻辑指令

    AND指令:与运算

    A B C
    1 0 0
    0 1 0
    0 0 0
    1 1 1
    

    1、当前汇编指令为and edx,ecx
    2、当前ecx寄存器中的地址值为00000000,edx寄存器中的地址值11111111
    3、单步步过

    可以发现edx的值变为了00000000,原因是edx和ecx进行与运算,结果赋值给了edx寄存器中的地址值


    OR指令:或运算

    A B C
    1 0 1
    0 1 1
    0 0 0
    1 1 1
    

    1、当前汇编指令为and edx,ecx
    2、当前ecx寄存器中的地址值为11111111,edx寄存器中的地址值00000000
    3、单步步过

    发现结果edx中的地址为11111111,原因是进行了或运算 00000000 00000000 00000000 00000000 和 11111111 11111111 111111111 11111111 或运算结果自然是 11111111 11111111 11111111 11111111


    XOR指令:异或运算

    A B C
    1 0 1
    0 1 1
    0 0 0
    1 1 0
    

    1、当前汇编指令为xor edx,ecx
    2、当前ecx寄存器中的地址值为00000011,edx寄存器中的地址值00000000
    3、单步步过

    发现edx寄存器中的值也为00000011,原因是00000000 00000000 00000000 00010001 和 00000000 00000000 00000000 00000000

    那么xor运算结果为00000000 00000000 00000000 00010001 转换为十六进制同样也就是00000011了


    not指令:取反

    A B
    1 0
    0 1
    

    1、当前汇编指令为not ecx
    2、当前ecx寄存器中的地址值为00000011
    3、单步步过

    结果发现ecx中的值为FFFFFFEE,原因 00000011的二进制为00000000 00000000 00000000 00010001,那么取反的话就是11111111 11111111 11111111 11101110也就是FFFFFFEE

  • 相关阅读:
    liunx各命令及全称
    window启动数据库服务命令
    拉取github指定分支上的代码
    python项目学习
    客户展示 增删改查
    登录 注册功能 表梳理
    java简历
    go语言数组
    go语言 变量作用域
    go语言函数
  • 原文地址:https://www.cnblogs.com/zpchcbd/p/12050190.html
Copyright © 2011-2022 走看看