Javascript 16进制转有符号的10进制整数
var hex="FF00"
console.log(parseInt(hex,16));//这里本意我们是想转出-256,但结果却是65280
let i="FF00";
let two = parseInt(i, 16).toString(2);
let bitNum=i.length*4;
if (two.length < bitNum) {
while (two.length < bitNum) {
two = "0" + two;
}
}
if (two.substring(0, 1) == "0") {
two = parseInt(two, 2);
}
else {
let two_unsign = "";
two = parseInt(two, 2) - 1;//减一
two = two.toString(2);
two_unsign = two.substring(1, bitNum);//截取除了最高位以外的位
two_unsign = two_unsign.replace(/0/g, "z");//反码
two_unsign = two_unsign.replace(/1/g, "0");
two_unsign = two_unsign.replace(/z/g, "1");
two = parseInt(-two_unsign, 2);//补上负号
}
module.exports=(i)=>{
let two = parseInt(i, 16).toString(2);
let bitNum=i.length*4;
if (two.length < bitNum) {
while (two.length < bitNum) {
two = "0" + two;
}
} if (two.substring(0, 1) == "0") {
two = parseInt(two, 2); return two;
} else {
let two_unsign = "";
two = parseInt(two, 2) - 1;
two = two.toString(2);
two_unsign = two.substring(1, bitNum);
two_unsign = two_unsign.replace(/0/g, "z");
two_unsign = two_unsign.replace(/1/g, "0");
two_unsign = two_unsign.replace(/z/g, "1");
two = parseInt(-two_unsign, 2); return two;
}
}
Javascript 16进制转有符号的10进制整数的更多相关文章
- C#中2、8、16进制 有符号转换10进制正负数
曾经让我苦想的其他进制转有符号整型问题,结果自己想到方法解决后才发现原来如此简单. 1.Int16(2个byte长度 ) : 方法 :Convert.ToInt16(进制编码,进制) a.16进制转1 ...
- 数组中hashCode就是内存地址,以及汉字幻化为16进制或10进制
int[] arr4={1,2,3,4,5}; System.out.println("arr4: "+arr4); System.out.println("arr4.h ...
- 2019牛客暑期多校训练营(第五场)B:generator 1 (10进制快速幂)
题意:给定x0,x1,a,b,满足xi=a*xi-1+b*xi-2: 求xn,n<10^(10^6): 思路:10进制快速幂裸题.降幂来写好像也是可以的,但是循环节不是phi(mod),所以数学 ...
- SQLSERVER 16进制与10进制转换
最近工控项目中遇到的16进制与10进制转换,在.NET中比较容易实现,在SQLSERVER中发现没有直接的转换,尤其是出现超出范围的long负数,即无符号64位整数在sqlserver中的存储.网上找 ...
- python中的2、8、16、10进制之间的转换
python除法的坑 众所周知,python除法有两个运算符,一个是/,还有一个是//,那么这两个有什么不同之处呢? 从图片可以得知,使用//返回一个float类型,而使用/返回一个int类型.我们总 ...
- python进制转化函数,10进制字符串互转,16进制字符串互转
来了老弟,emmmmm,今天想到平时经常用到编码转化,把字符串转化为16进制绕过等等的,今天想着用python写个玩,查询了一些资料,看了些bolg 上面的两个函数是将二进制流转化为16进制,data ...
- java中 8进制 10进制 2进制 16进制 相互转换
十进制转成十六进制: Integer.toHexString(int i) 十进制转成八进制 Integer.toOctalString(int i) 十进制转成二进制 Integer.toBinar ...
- JavaScript中二进制与10进制互相转换
webpack打包生成的代码中涉及了一些二进制位与的操作, 所以今天来学习一下JavaScript中的二进制与十进制转换操作吧 十进制转二进制: var num = 100 num.toString( ...
- c#与js中10进制16进制的转化,记录防忘
js: var param="11"; param=parseInt(param,16); //17 param=parseInt(param,10); //11 //后面的参 ...
随机推荐
- Hbase javaAPI报错:Callexception,tries=10,retries=35,started=38465msago
[client.RpcRetryingCaller(142)]Callexception,tries=10,retries=35,started=38465msago,cancelled=false, ...
- JSONObject转换为map
http://cloudyxuq.iteye.com/blog/1618213 private static HashMap<String, String> toHashMap(Objec ...
- unity-消息的注册,监听,回调
最近在空闲时间准备做个小游戏,先把一些基本框架搭建好,本次记录的是消息的注册,监听和回调等 其实这些就是基于C#的委托(delegate) 第一步:定义一些委托 namespace Common.Me ...
- SpringBoot2.x快速入门指南(一)
SpringBoot2.x快速入门指南(一) 准备工作 IDE: IntelliJ IDEA 2020.3 Java环境 jdk1.8 在官网快速创建SpringBoot项目 下面开始进入正题: 进入 ...
- 仿开源框架从零到一完整实现高性能、可扩展的RPC框架 | 6个月做成教程免费送
去年年就在写一本付费小册,今年年初基本上就写完了,本来预计计划是春节上线结果由于平台的原因一直拖着没上.五一前跟平台联系给的反馈是五月份能上,结果平台又在重构,停止小册的申请和上线,最后我考虑了一下决 ...
- mac+mamp安装composer
打开终端 php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');" 安 ...
- Istio Gateway网关
Istio Ingress Gateway Istio 服务网格中的网关 使用网关为网格来管理入站和出站流量,可以让用户指定要进入或离开网格的流量. 使用网关为网格来管理入站和出站流量,可以让用户指定 ...
- 来自AI的Tips——情景智能
来自AI的Tips--情景智能 上一次我们介绍了华为快服务智慧平台是什么,今天我们来侃一侃平台最有代表性的一个流量入口--情景智能(AI Tips). 首先情景智能在哪呢?大家可以拿出自己的华 ...
- 0512String类
String类 2. String类 2.1 字符串类型概述 又爱又恨!!! 爱: 字符串基本上就是数据的保存,传输,处理非常重要的一种手段. 恨: 解析过程非常烦人,需要掌握熟记很多方法,同时需要有 ...
- 子串 NOIP2015 D2T2 luoguP2679 字符串处理+DP
AC通道! 题目大意: 给定两个长度分别为 n 和 m 的字符串 A 和 B,选取 A 中的 k 个子串,使这 k 个子串按照先后顺序连接起来后等于 B 子串. 输入输出样例 输入 #1 6 3 ...