解析二进制文件的工具方法
目录
- 1 一个字节范围
- 2 >> 的含义
- 3 十进制的负数变成二进制
- 4 0x1 代表什么意思
- 5字节组转list
- 6 list转字节组
- 7 截取bytes
1 一个字节范围
1个字节,取值范围是-128~127.
正数的最大补码:01111111,即127.负数的最大补码10000000,原码为100000000,即进了一位变成了-128
01111111 为127
2 >> 的含义
是一个“有符号”右移位运算符;它会将运算符左边的运算对象向右移动运算符右侧指定的位数。
右移动之后,高位会自动补0
运算符使用了“符号扩展”:若值为正,则在高位插入0;若值为负,则在高位插入1
byte num = -128; 的二进制为 10000000
3 十进制的负数变成二进制
负数转换为二进制,就是将其相反数(正数)的补码的每一位变反(1变0,0变1)最后将变完了的数值加1,就完成了负数的补码运算。这样就变成了二进制。
11 >>2(11为int型)1)、11的二进制形式为:0000 0000 0000 0000 0000 0000 0000 10112)、把低位的最后两个数字移出,因为该数字是正数,所以在高位补零。3)、最终结果是0000 0000 0000 0000 0000 0000 0000 0010。4)、转换为十进制是3。
4 0x1 代表什么意思
byte nuy = 0x1;String s1 = BitConverter.byteToBit(nuy );System.out.println(s1);值为 00000001
5字节组转list
public static List<Byte> bytesToList(byte[] bytes) {return Bytes.asList(bytes);}
6 list转字节组
/*** list转字节组** @param list list* @return byte[]*/public static byte[] listToBytes(List<Byte> list) {return Bytes.toArray(list);}
7 截取bytes
/*** 截取bytes** @param bytes 字节组* @param from 起始位* @param to 结束位* @return bytes*/public static byte[] subBytes(byte[] bytes, int from, int to) {return Arrays.copyOfRange(bytes, from, to);}
解析二进制文件的工具方法相关推荐
- 一种C#读写二进制文件的通用方法
在日常的工作中,我们经常需要进行一些二进制文件或协议的读写操作,用C#解析二进制文件常常是一件比较麻烦且容易出错的工作,本文介绍了一种在C#中实现快速读写二进制文件通用的方法. 以一个解析Mp3 ID ...
- JDOM是JAVA中最常用的一种解析XML的工具
JDOM是JAVA中最常用的一种解析XML的工具,我们可以从JDOM的官方网站www.jdom.org 下载JDOM1.0.ZIP压缩包,将其解压,将JDOM.JAR文件配置到classpath当中去 ...
- jQuery_$工具方法
jQuery_$工具方法 1.$.each():遍历数组或对象中的数据 2.$.trim():去除字符串两边的空格 3.$.type(obj):得到数据的类型 4.$.isArray(obj):判断是 ...
- jquery1.43源码分析之工具方法
相关文章: jQuery插件开发全解析 读jq之四 jquery1.43源码分析之核心部分 推荐圈子: Jquery 更多相关推荐 这个部分是jquery一些常用的工具方法. 包括为jquery对象扩 ...
- jQuery工具方法
目录 常用工具方法 判断数据类型的方法 Ajax操作 $.ajax 简便写法 Ajax事件 返回值 JSONP 文件上传 参考链接 jQuery函数库提供了一个jQuery对象(简写为$),这个对象本 ...
- vue 懒人_Vue.js 中的实用工具方法【推荐】
收集日常开发中常用到的一些工具方法, 包含 vue 的公用过滤器.公用指令等 (PS: 懒人养成记) 公用自定义过滤器 import Vue from 'vue' import moment from ...
- jQuery常用工具方法
前面的话 jQuery提供一些与元素无关的工具方法,不必选中元素,就可以直接使用这些方法.如果理解原生javascript的继承原理,那么就能理解工具方法的实质.它是定义在jQuery构造函数上的方法 ...
- python 读取pdf cid_python使用pdfminer解析pdf文件的方法示例
最近要做个从 pdf 文件中抽取文本内容的工具,大概查了一下 python 里可以使用 pdfminer 来实现.下面就看看怎样使用吧. PDFMiner是一个可以从PDF文档中提取信息的工具.与其他 ...
- Vue 项目 build 流程解析(webpack工具解析)
Vue 项目 build 流程解析(webpack工具解析) 注:本篇文章解析框架为 vue2.0 本篇文章通过解析简单的项目打包步骤试着去了解我们的 Vue 项目是怎么打包的. build.js 干 ...
- 第三章:JQuery基础---核心函数选择器、工具方法
一:是什么?以及作用 定义:有特定语法规则(css选择器)的字符串 作用:用来查找某个/些DOM元素: $(selector) 二:基本选择器(最基本最常用的选择器) id选择器:#id ...
最新文章
- 2021春季学期-创新设计与实践-Lesson6
- 基于python的螺纹钢28分钟策略
- 分析vue-cli@2.9.3 搭建的webpack项目工程
- 【数据结构与算法】之判断一个整数是否是 4 的幂次方的高逼格算法
- ipc$开启telnet
- 【转】Android 如何获取SDCard 内存(二)
- 弹性升级诀窍分享:让双11来的更猛烈些吧
- Javascript特效:一个不停的表盘
- 直线加速器,可以使用半圆转向串联,作弓形结构
- 阿里云开发-身份证图像识别(SpringBoot)
- Mac SDK环境变量配置
- win10未安装任何音频输出设备解决方案-记一次电脑的睿智问题
- LVS-Linux服务器集群系统(一)
- Beer Bill(签到题)
- Linux 服务器上安装 Virtuoso 数据库 并导入数据(超详细)
- Python数据分析实战之北京二手房房价分析
- 【别墅装修】—婚房装修成今年家居市场消费热点
- cajviewer打不开,卸载重装也于事无补。一分钟解决,亲测有效。
- Oracle(三)常用的查询语句
- 企业中台最佳实践--什么是中台(一)