字符按位取反python_汇编 (NOT)按位取反指令

本文深入探讨了按位取反的概念,包括逻辑取反(!)和按位取反(~)。通过示例展示了在Python和X86汇编中的实现方式,解释了VC中的NOT运算符,并提供了相关代码示例。文章还提到了其他逻辑运算,如AND, OR以及XOR,并讨论了X86汇编中不支持内存到内存寻址的原因。" 126955634,8510925,G711编码解析:PCM到G711A与G711U的转换,"['音频编码', 'G711标准', 'PCM转换', 'C++', '音视频处理']
摘要由CSDN通过智能技术生成

知识点:

 (NOT)按位取反指令

 逻辑取反(!)

 按位取反(~)

 SETZ(SETE) 取ZF位值保存

 SETNZ(SETNE)将ZF位值取反后保存

一、逻辑取反(!)

!111 =0;

!0=1;

SETZ(SETE) //取ZF标志位值 放到寄存器里

SETNZ(SETNE)

二、按位取反NOT指令

VC中提供运算符为(~)

11111111111111111111111111011110 //取反运算后

00000000000000000000000000100001

// asm_NOT.cpp : 定义控制台应用程序的入口点。

//

#include "stdafx.h"

int _tmain(int argc, _TCHAR* argv[])

{

int i,j;

i=0x8877;

j=!i; //0;

__asm mov edx,edx

j=~i;//00000000000000001000100001110111

//11111111111111110111011110001000

//FFFF7788

// 11011

// 00100

//00401000 /$ 55 PUSH EBP

//00401001 |. 8BEC MOV EBP,ESP

//00401003 |. 83EC 08 SUB ESP,8

//00401006 |. C745 FC 77880>MOV DWORD PTR SS:[

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值