在tcp/ip协议中以BigEndian方式的编码与解码
2019独角兽企业重金招聘Python工程师标准>>>
package com.tcpip;/*** 在tcp/ip协议中以BigEndian方式的编码与解码* @author **/
public class BruteForceCoding {private static byte byteVal = 101;private static short shortVal = 10001;private static int intVal = 100000001;private static long longVal = 1000000000001L;private final static int BSIZE = Byte.SIZE;private final static int SSIZE = Short.SIZE;private final static int ISIZE = Integer.SIZE;private final static int LSIZE = Long.SIZE;private final static int BYTEMASK = 0xFF;public static String byteArrayToDecimalString(byte[] bArray){StringBuilder rtn = new StringBuilder();for(byte b:bArray){rtn.append(b&BYTEMASK).append(" ");}return rtn.toString();}/*** 对val进行编码* @param dst 源字节数组* @param val 需要编码的long值* @param offset 编码起始的偏移量* @param size 编码的位数* @return*/public static int encodeIntBigEndian(byte[] dst,long val,int offset,int size){for(int i=0;i<size;i++){dst[offset++] = (byte)(val >> ((size-i-1)*Byte.SIZE));}return offset;}/*** 对字节数组val进行解码* @param val 源字节数组* @param offset 解码起始的偏移量* @param size 解码的位数* @return*/public static long decodeIntBigEndian(byte[] val,int offset,int size){long rtn = 0;for(int i=0;i<size;i++){rtn = (rtn<<Byte.SIZE) | ((long)val[offset+i] & BYTEMASK);}return rtn;}public static void main(String args[]){byte[] message= new byte[BSIZE];int r = encodeIntBigEndian(message,1999999999,0,BSIZE);System.out.println(r);long rl = decodeIntBigEndian(message,0,BSIZE);System.out.println(rl);}}
转载于:https://my.oschina.net/u/2552902/blog/543962
在tcp/ip协议中以BigEndian方式的编码与解码相关推荐
- TCP/IP协议中的一些常用端口简单讲解
(源自http://bbs.360.cn/3232114/17010996.html) 那么TCP/IP协议中的端口指的是什么呢?如果把IP地址比作一间房子 ,端口就是出入这间房子的门.真正的房子只有 ...
- TCP之三:TCP/IP协议中backlog参数(队列参数)
目录: <TCP洪水攻击(SYN Flood)的诊断和处理> <TCP/IP协议中backlog参数> TCP建立连接是要进行三次握手,但是否完成三次握手后,服务器就处理(ac ...
- TCP/IP协议中的端口
本文所述端口都是逻辑意义上的端口,是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等. 我们这里将要介绍的就是逻辑意义上的端口. ...
- tcp/ip协议中消息传输对帧消息的操作
2019独角兽企业重金招聘Python工程师标准>>> 接口:Framer.java: package com.tcpip;import java.io.IOException; i ...
- TCP/IP协议中分包与重组原理介绍、分片偏移量的计算方法、IPv4报文格式
目录 一.什么是IP分片 二,为什么要进行IP分片 三.IP分片原理及分析 标志字段的作用 下面是标志位在IP首部中的格式以及各个标志的意义: TTL Protocol 协议号 分片包文示例: 分片偏 ...
- TCP/IP协议中常用端口表
表 7.1常用端口号列表 端口号 协议 关键词 描述 7 TCP/UDP ECHO 回送 9 TCP/UDP DISCARD 丢弃 15 TCP/UDP - 网络状态程序 20 TCP FTP-DAT ...
- tcp报文格式_腾讯面试中的TCP/IP协议简述+经典面试题
面试题有福利 TCP/IP协议简述+ TCP握手协议 在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接. 第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器, ...
- 一文带你看懂TCP/IP协议 (更新中 现更新至网络层部分)
相信大家在编程的学习或应用中,对网络编程都有一定的需求.我们都知道http/https属于TCP/IP协议,也都用到过get,post等方法,但是想要真正的了解这些东西的原理.我认为TCP/IP协议还 ...
- TCP/IP协议就是这个玩意(不看也不影响拿到50K!但是程序员应该知道这些)持续更新中
相信大家在编程的学习或应用中,对网络编程都有一定的需求.我们都知道http/https属于TCP/IP协议,也都用到过get,post等方法,但是想要真正的了解这些东西的原理.我认为TCP/IP协议还 ...
最新文章
- re.sub()用法详解
- 04使用模板显示内容
- HDLBits 系列(44)状态机补录
- 从0到70%:Chrome上位揭秘!
- IDEA中SpringBoot项目使用@Data要安装Lombok插件
- C++图形着色graph coloring算法(附完整源码)
- C# WinForm 自启动/模拟开机自动启动
- android操作系统 真的吗_旋挖机培训学校真的能学会吗,旋挖钻机到底有哪些操作系统...
- 前端学习(64):css继承属性小结
- python之路——内置函数和匿名函数
- VBA 利用API 测试计算机网络连通性
- JAVA5000行代码什么概念_GitHub - catstiger/mvc: 一个不超过5000行代码的,快速,简单,易用的MVC框架。...
- django-模板的继承
- 腾达A6无线路由器的几种连接模式
- sql server 索引阐述系列五 索引参数与碎片
- 如何简单形象又有趣地讲解神经网络是什么
- 使用FileZilla搭建简单的FTP
- 十分钟掌握Nodejs下载和安装
- 发电厂计算机监控课,那比水利发电厂监控系统课件.ppt
- PCWorld:微软Google进军社交搜索需解决八问题
热门文章
- Flink 从 Checkpoint 中恢复数据
- Rademacher Complexity
- 【已解决】联想电脑摄像头无法使用
- 【JAVADAY21-MySQL】MySQL完结篇
- 解读A Primer on Near-Field Beamforming for Arraysand Reconfigurable Intelligent Surfaces
- 微信小程序开发之——动画-帧动画(2)
- pyecharts极简入门教程
- PicGo+华为云OBS搭建图床
- 智慧城市物联网平台发布会举行
- Python采集去哪儿旅游攻略(爬虫+数据分析),快过年了,这不得全家一起出去玩一次