`
milk_36
  • 浏览: 118589 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

转--通过位运算求整数的绝对值

 
阅读更多

MOV EDX, EAX;

SAR EDX, 31;     //如果EAX是负数:EDX=oxffffffff,否则EDX=0

XOR EAX, EDX; //如果EAX是负数:EAX取反,否则EAX不变

SUB EAX, EDX;   //如果EAX是负数:EAX减0xffffffff(-1) 取反加1就是绝对值,否则EAX不变

int temp = Num;
temp = temp >> 31;
Num= Num^ temp;
Num= Num- temp;

分享到:
评论

相关推荐

    经典的位运算合集 Matrix67及总结

    【转载】常用位操作 位运算应用口诀 常用位操作 几个常用的位操作 计算树状数组lowbit的三种方法 统计一个整数的二进制中1的个数(位运算技巧) 收藏 统计一个整数的二进制中1的...用位运算求整数的绝对值的三种方法

    java编译的大整数程序可加减求绝对值开平方

    采用java编译的大整数程序(超过9位)且转化为字符串打印出,在小数点后可以四舍五入计算,可以加减求绝对值开平方等,不止仅限于intger输入可以字符串输入也可以是一个对象进行输入

    长整数运算.zip

    设计程序实现两个任意长整数的求和运算。 [ 基本要求 ] 《数据结构》题集 利用双向循环链表实现长整数的存储, 每个结点含一个整型变量. 任何整型变量的范围是 -(215-1)~(215-1)。输入和输出形式: 按中国对于长...

    长整数四则运算 C语言

    首先对输入串进行输入格式判断,如果判断不正确则重新输入,输入正确将...判断输入串是整数还是负数决定是否输出‘-’,对两串的绝对值的大小进行比较,并根据四则运算控制符的符号来判断进行的运算和符号标识位的值。

    Java位运算的应用

    对于两个整数x,y,如果用 (x+y)/2 求平均值,会产生溢出,因为 x+y 可能会大于INT_MAX,但是我们知道它们的平均值是肯定不会溢出的,我们用如下算法: int average(int x, int y) //返回X,Y 的平均值 { return ...

    2018年秋八年级数学上册第十五章分式15.2分式的运算15.2.3整数指数幂15.2.3.2用科学记数法表示绝对值小于1的数课

    2018年秋八年级数学上册第十五章分式15.2分式的运算15.2.3整数指数幂15.2.3.2用科学记数法表示绝对值小于1的数课时作业新版新人教版20180823156

    易语言用长整数模拟十进制小数运算

    易语言用长整数模拟十进制小数运算源码,用长整数模拟十进制小数运算,取数值,取小数位置,赋值,相加,相减,相乘,相除,去掉多余零,到字符串,取长整数绝对值,等于,大于,小于

    初一数学绝对值综合专题讲义.doc

    绝对值综合专题讲义 本讲义主要讲解了绝对值的定义、性质和应用,涉及到绝对值的非负性、绝对值的相等性、绝对值的加法和减法...本讲义涵盖了绝对值的定义、性质和应用,帮助学生更好地理解和掌握绝对值的概念和运算。

    c++带符号的大整数计算器

    通过该程序,用户可以输入两个带符号的大整数,并选择需要进行的运算操作,最终得到正确的运算结果。 3.要求 ① 实现带符号大整数类: 设计一个 SignedBigInt 类,其中包括私有成员变量 sign 和 value,分别表示...

    后缀表达式计算器.exe(C++)

    (整数阶乘)、\(绝对值),其中整数阶乘和绝对值是单目运算符,其它的都是双目运算符。一个数后面必须加空白字符(不管后面是其它数还是运算符还是结束符)。以等于号=结束。不支持正负号,如果要用负数可以用 0 a...

    大工21秋《计算机组成原理》在线作业3-【答案】.doc

    补码运算中两补码数相加采用1位符号位当时表示结果溢出 <-A.->符号位有进位 <-B.->符号位进位和数值最高位进位异或结果为0 <-C.->符号位为1 <-D.->符号位进位和数值最高位进位异或结果为1 【-参考.选择-】:D 6.假设...

    程序员二进制计算器 v1.36

    支持64位整型运算,整数有效范围为 -9223372036854775808 至 9223372036854774784。 三 数的表示 1-整型数表示法 如何表示二、八、十六进制整数: (1)二进制数 以0b或0B开头,后面的0、1数字之间可以用空格...

    1108:向量点积计算.cpp

    【题目描述】 在线性代数、计算几何中,向量点积是一种十分重要的运算。给定两个n维向量a=(a1,a2,...,an)和b=(b1,b2,...,bn),求点积a⋅...每个整数的绝对值都不超过1000。 【输出】 一个整数,即两个向量的点积结果。

    北理大学计算机实验基础-实验二-实验报告表答案.docx

    0 000000000000000000000000 00000000 0 绝对值最大数 99.9999 111111111100011101000010 11110011 6 说明:本实验对计算机内存数据的存放拟定为: 整数用两个字节存储,并负数只考虑原码; 实数用4个字节存储,其中...

    中国矿业大学程序设计综合实践java四次作业第一次作业简单计算器

    1. 能够完成加减乘除四则运算(整数、小数) 2. 具备清空、退格功能 一、 拓展功能: 1. 能够记录计算的历史记录 2. 正负号功能 3. 支持带括号的运算 4. 平方根,立方根,任意次方根 5. 平方、立方、任意次方 6. ...

    计算机实习实验报告.docx

    补码加减交替除法运算规则,补码两位乘法运算,补码一位乘法运算,乘法原码两位运算,乘法原码一位运算,原码加减交替除法运算,补码加减法运算。 实验设备 计算机实习实验报告全文共19页,当前为第1页。电脑,仿真...

    javascript 二进制运算技巧解析

    1、原码、反码、补码,正数减法转补码加法 js 在进行二进制运算时,使用 32 位二进制整数,由于 js 的整数都是有符号数,最高位0表示正数,1表示负数,因此,js 二进制运算中使用的整数表达范围是 代码如下: -Math....

    帮你度过C语言新手阶段

    求负数的补码的方法是:将该数的绝对值的二进制形式,按位取反加1。 如-10的16位二进制形式为0000000000001010,按位取反后为1111111111110101,再加1为1111111111110110 第三关: 一个16位的整数的表示范围为:-...

    陈越、何钦铭-数据结构作业5:一元多项式的乘法与加法运算

    输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。输出分2行,分别以指数递降方式输出乘积多项式以及和多项式非零...

    浙大-Java语言程序的设计编程答案6.doc

    求1-1/3+1/5-1/7+…… 输入一个正整数repeat (0),做repeat次下列运算: 读入1 个正实数eps,计算并输出1-1/3+1/5-1/7+……,直到最后一项的绝对值小于eps为 止(要求每一项的绝对值均大于等于eps,并以float...

Global site tag (gtag.js) - Google Analytics