iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > node.js >javascript如何进行按位求反
  • 835
分享到

javascript如何进行按位求反

2024-04-02 19:04:59 835人浏览 薄情痞子
摘要

这篇文章主要为大家展示了“javascript如何进行按位求反”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“javascript如何进行按位求反”这篇文章吧。

这篇文章主要为大家展示了“javascript如何进行按位求反”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“javascript如何进行按位求反”这篇文章吧。

在javascript中,可以利用“~”操作符来实现按位求反,语法“~ 运算数”;“~”操作符可以将指定运算数转为二进制整数形式,并对该二进制操作数逐位进行取反操作。

教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

在javascript中,可以利用“~”操作符来实现按位求反。如~1 = -2,~-3=2,~true=-2,~false=-1

“~”操作符可以查看指定值的二进制表示形式,并对该二进制操作数逐位进行取反操作

  • 第 1 步:把运算数转换为 32 位的二进制整数。

  • 第 2 步:逐位进行取反操作。

  • 第 3 步:把二进制反码转换为十进制浮点数。

对 12 进行位非运算,则返回值为 -13。

console.log( ~ 12 );  //返回值-13

下图以算式的形式解析了对 12 进行位非运算的过程。

javascript如何进行按位求反

如何按位取反计算

  按位取反的运算规则步骤:

  1、十进制转成原码

  转成二进制原码,最高位是符号位,0为正数,1为负数

    十进制   ---->  原码
      1   ---->  00000001
     -1   ---->  10000001
  2、原码转成反码

  正数的反码就是原码,负数的反码是符号位不变,其余位取反

    十进制  ---->   原码    ---->  反码
      1    ----> 00000001 ----> 00000001
     -1    ----> 10000001 ----> 11111110
  3、反码转成补码

  正数的补码还是原码,负数的补码是在反码的基础上加1

    十进制  ---->    原码   ---->   反码   ---->  补码
      1    ----> 00000001 ----> 00000001 ----> 00000001
     -1    ----> 10000001 ----> 11111110 ----> 11111111
  4、补码取反得原码

  正整数补码取反之后符号位置为1,是一个负整数,所以再按照负整数计算补码的方式逆运算得到原码

  逆运算得到原码,首先将取反的补码转成反码,公式:反码=补码 - 1,然后将反码转成原码,符号位不变,其他位取反

  十进制  ---->    原码    ---->   反码    ---->   补码     ---->  补码取反   ---->  取反补码转成反码  ---->  转成原码
    1   ----> 00000001  ----> 0000001  ---->  00000001  ----> 11111110   ---->   11111101    ---->  10000010

  负整数补码取反之后符号位置为0,是一个正整数,因正整数的反码与补码就是本身,所以不需要再进行逆运算

  十进制  ---->    原码    ---->   反码     ---->   补码      ---->   补码取反得原码  
    -1  ---->  10000001  ----> 11111110  ---->  11111111   ---->     00000000    
  5、将原码转成二进制
 十进制  ---->    原码    ---->   反码    ---->   补码     ---->  补码取反   ---->  取反补码转成反码  ---->  转成原码  ---->  转成二进制
    1   ----> 00000001  ----> 0000001  ---->  00000001  ----> 11111110   ---->   11111101    ---->  10000010 ---->   -2
  十进制  ---->    原码    ---->   反码     ---->   补码      ---->   补码取反得原码   ---->  转成二进制
    -1  ---->  10000001  ----> 11111110  ---->  11111111   ---->    00000000     ---->     0

  所以,~1=-2,~-1=0

取反再取反~~的作用

  操作符~, 是按位取反的意思,表面上~~(取反再取反)没有意义,实际上在js中可以将浮点数变成整数。

 console.log(~~1.11);          //1
 console.log(~~-25.11);       //-25

以上是“javascript如何进行按位求反”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网node.js频道!

--结束END--

本文标题: javascript如何进行按位求反

本文链接: https://www.lsjlt.com/news/87397.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • javascript如何进行按位求反
    这篇文章主要为大家展示了“javascript如何进行按位求反”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“javascript如何进行按位求反”这篇文章吧。 ...
    99+
    2024-04-02
  • php中如何进行按位运算
    本篇内容介绍了“php中如何进行按位运算”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、按位与(&)运算按位与运算是指将两个二进制...
    99+
    2023-07-06
  • javascript如何进行求根运算
    这篇文章主要介绍了javascript如何进行求根运算的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇javascript如何进行求根运算文章都会有所收获,下面我们一起来看看吧。...
    99+
    2024-04-02
  • javascript如何进行求幂运算
    今天小编给大家分享一下javascript如何进行求幂运算的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起...
    99+
    2024-04-02
  • php如何将字符串按单词进行反转
    这篇文章主要介绍了php如何将字符串按单词进行反转,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。反转方法:1、使用“explode(' ',$str)”语句将...
    99+
    2023-06-25
  • JavaScript如何进行AJAX调用和请求
    本篇内容主要讲解“JavaScript如何进行AJAX调用和请求”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript如何进行AJAX调用和请求”吧...
    99+
    2024-04-02
  • JavaScript中如何对字符串进行反转义
    本文小编为大家详细介绍“JavaScript中如何对字符串进行反转义”,内容详细,步骤清晰,细节处理妥当,希望这篇“JavaScript中如何对字符串进行反转义”文章能帮助大家解决疑惑,下面跟着小编的思路慢...
    99+
    2024-04-02
  • mysql如何实现按行求和
    mysql中有一个聚合函数sum可用于求和,但sum只能按列求和,即它可以对数据库中的某一列或者某几列进行求和,但不能实现按行求和,即对一行中的某几列数据进行求和。那如果要想对一行中的某几列数据进行求和怎么办呢? 不用sum,直接用表达式 ...
    99+
    2023-09-22
    数据库
  • JavaScript如何求数组中位数
    这篇文章主要讲解了“JavaScript如何求数组中位数”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JavaScript如何求数组中位数”吧! ...
    99+
    2024-04-02
  • 如何在 PHP 中使用 JavaScript 进行 HTTP 请求?
    在现代 Web 开发中,经常需要使用 JavaScript 发送 HTTP 请求来获取数据。在某些情况下,需要在 PHP 中执行此操作。本文将探讨如何在 PHP 中使用 JavaScript 发送 HTTP 请求。 一、使用 XMLHtt...
    99+
    2023-11-07
    http apache javascript
  • css如何进行定位
    这篇文章给大家分享的是有关css如何进行定位的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。css的全称是什么css的全称是Cascading Style Sheets(层叠样式表),它是一种用来表现HTML或XM...
    99+
    2023-06-14
  • html如何进行定位
    这篇文章将为大家详细讲解有关html如何进行定位,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。html定位的方法:首先创建一个HTML示例文件;然后使用a标签写好3个菜单以及内容;接着给每个内容标题的a标...
    99+
    2023-06-15
  • Python中如何实现真正的按位取反运算
    目录运算代码实例说明补充:Python的按位取反运算符的简单解析总结文章面向对象:对原理和编程不大有兴趣,只是需要用python实现一些运算功能的非计算机学生或从业者。大佬慎看防止血...
    99+
    2023-02-07
    python按位取反运算符 python 按位取反 python 取反
  • JavaScript如何使用按位双非运算符
    这篇文章给大家分享的是有关JavaScript如何使用按位双非运算符的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。按位双非运算符按位双非运算符可以替代Math.floor()方法。//Longhand ...
    99+
    2023-06-27
  • JavaScript如何简写双重按位非运算符
    这篇文章主要介绍了JavaScript如何简写双重按位非运算符,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。简写双重按位非运算符按位运算符绝...
    99+
    2024-04-02
  • Centos8如何进行复位清屏
    小编给大家分享一下Centos8如何进行复位清屏,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!清屏一般是指清除命令行模式下的字,因为字太多了会很乱吧。所以偶尔需要清屏。不同操作系统清屏的命令不一样,dos下或者是Windo...
    99+
    2023-06-10
  • javascript如何进行累加
    这篇文章将为大家详细讲解有关javascript如何进行累加,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。javascript实现累加的方法:首先创建相应的js示例文件;然后通过“for(var i = ...
    99+
    2023-06-15
  • 示例讲解php中怎么进行按位运算
    随着计算机技术的飞速发展,位运算已经成为了计算机科学中重要的概念之一。PHP中也不例外,它提供了一组用于进行位运算的函数。本文将详细介绍PHP如何实现按位运算。一、按位与(&)运算按位与运算是指将两个二进制数的对应位上的数值进行“与...
    99+
    2023-05-14
  • php数组元素如何进行反转
    这篇文章主要介绍“php数组元素如何进行反转”,在日常操作中,相信很多人在php数组元素如何进行反转问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php数组元素如何进行反转”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-21
  • php如何进行字符串反转义
    这篇文章主要讲解了“php如何进行字符串反转义”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php如何进行字符串反转义”吧!在php中,可以利用stripslashes()函数来进行字符串反...
    99+
    2023-06-20
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作