二进制

Java中的基本数据类型

人走茶凉 提交于 2020-03-14 01:33:45
Java中的数据类型整体上分为两大类:基本数据类型和引用数据类型 基本数据类型 整数型 byte byte类型占一个字节,8位,有符号的以二进制补码表示的整数; 最小值为-2 7 (-128),最大值为2 7 - 1(127),默认值为0; byte类型可以大大节约内存空间,byte占用的空间只占int类型的1/4; short short类型占用两个字节,16位,有符号的以二进制补码表示的整数; 最小值为-2 15 (-32768),最大值为2 15 - 1 (32767),默认值为0; short也可以节约内存空间,short占用的空间占int类型的1/2; int int类型占四个字节,32位,有符号的以二进制补码表示的整数; 最小值为-2 31 (-2,147,483,648),最大值为2 31 - 1(2,147,483,647),默认值为0; 一般情况下整形变量的默认数据类型就为int类型; long long 类型是 64 位、有符号的以二进制补码表示的整数; 最小值为-2 63 (-9,223,372,036,854,775,808),最大值为2 63 - 1(9,223,372,036,854,775,807),默认值为0L; 浮点数型 float float 数据类型是单精度、占32位; float 在储存大型浮点数组的时候可节省内存空间; 默认值为0.0f;

二进制如何转十进制,十进制如何转二进制

ⅰ亾dé卋堺 提交于 2020-03-13 11:38:40
二进制如何转十进制,十进制如何转二进制 1、 正整数转成二进制。要点一定一定要记住哈:除二取余,然后倒序排列,高位补零。 也就是说,将正的十进制数除以二,得到的商再除以二,依次类推知道商为零或一时为止,然后在旁边标出各步的余数,最后倒着写出来,高位补零就OK咧。哎呀,还是举说明吧,比如42转换为二进制,如图1所示操作例。 42除以2得到的余数分别为010101,然后咱们倒着排一下,42所对应二进制就是101010.如图2所示更直观的表达。 计算机内部表示数的字节单位是定长的,如8位,16位,或32位。所以,位数不够时,高位补零,所说,如图3所示,42转换成二进制以后就是。00101010,也即规范的写法为(42)10=(00101010)2.赶紧记住吧。 2、 负整数转换成二进制 方法:先是将对应的正整数转换成二进制后,对二进制取反,然后对结果再加一。还以42为例,负整数就是-42,如图4所示为方法解释。最后即为:(-42)10=(11010110)2. 3、 小数转换为二进制的方法:对小数点以后的数乘以2,有一个结果吧,取结果的整数部分(不是1就是0喽),然后再用小数部分再乘以2,再取结果的整数部分……以此类推,直到小数部分为0或者位数已经够了就OK了。然后把取的整数部分按先后次序排列就OK了,就构成了二进制小数部分的序列,举个例子吧,比如0.125,如图5所示。

5/30 c语言中的位运算

99封情书 提交于 2020-03-13 11:00:40
1、什么是位运算? 位运算是指按二进制位进行的运算。因为在系统软件中,常要处理二进制的问题。储存单元中的各二进制位左移或者右移一位,两个数按位相加等。c语言灵活,接近底层,对程序员的要求高,不像其他语言对c语言进行了封装,出错性会高很多。 2、位运算符和位运算。 运算符&按位与 ~取反 |按位或 <<左移 ^按位或 >>右移。位运算中除了~以外,均为二元元运算符,即要求两侧各有一个运算量。 3、与&的应用。 清零,无论任何一个二进制的书与上一个00000000,与之后就全为0 了。 去一个数中某些指定位,假如哦们需要一个字型数据取出其低八位的值时, 11010101 01011011&00000000 11111111=00000000 01011011 来源: https://www.cnblogs.com/serious123/p/10952816.html

Python之网络爬虫

跟風遠走 提交于 2020-03-12 21:17:47
一、读取网页 1、使用自带的 urllib模块 : 引入自带的模块urllib 使用文件里面的urlopen模块 (1)发送的是get请求: from urllib.request import urlopen url='http://www.nnzhp.cn/archives/423' res=urlopen(url).read() #打开url,获取url的网页内容 发送的是get请求 print(res.decode()) #将结果返回的二进制类型转为字符串类型 (2)发送的是post请求: from urllib.parse import urlencode #由于不能直接传字典,要传二进制格式,所以导入该模块 url='http://api.nnzhp.cn/api/user/login' data={'username':'niuhanyang','passwd':'aA123456'} data=urlencode(data) #先将字典拼接成k-v格式 print(data) #结果:username=niuhanyang&passwd=aA123456 res=urlopen(url,data.encode()).read() #再将k-v格式转成二进制 print(res.decode()) #将返回的二进制转成字符串再返回 import json d=json

【2020Python修炼记13】Python语法入门—字符编码

夙愿已清 提交于 2020-03-12 19:06:12
一、知识储备 1、三大核心硬件——CPU,内存,硬盘 所有软件都是运行硬件之上的,与运行软件相关的三大核心硬件为cpu、内存、硬盘 #1、软件运行前,软件的代码及其相关数据都是存放于硬盘中的 #2、任何软件的启动都是将数据从硬盘中读入内存,然后cpu从内存中取出指令并执行 #3、软件运行过程中产生的数据最先都是存放于内存中的,若想永久保存软件产生的数据,则需要将数据由内存写入硬盘 2、文本编辑器读取文件内容的流程 #阶段1、启动一个文件编辑器(文本编辑器如nodepad++,pycharm,word) #阶段2、文件编辑器会将文件内容从硬盘读入内存 #阶段3、文本编辑器会将刚刚读入内存中的内容显示到屏幕上 3、Python解释器执行文件的流程 以python test.py为例,执行流程如下: #阶段1、启动python解释器,此时就相当于启动了一个文本编辑器 #阶段2、python解释器相当于文本编辑器,从硬盘上将test.py的内容读入到内存中 #阶段3、python解释器解释执行刚刚读入的内存的内容,开始识别python语法 4、总结—Python解释器&文本编辑器的异同 #1、相同点: 前两个阶段二者完全一致,都是将硬盘中文件的内容读入内存,详解如下 python解释器是解释执行文件内容的,因而python解释器具备读py文件的功能,这一点与文本编辑器一样 #2、不同点:

计算机进制间的转换

 ̄綄美尐妖づ 提交于 2020-03-12 13:33:54
进制的转换 二进制 指二进制计数系统,基于2的幂,用数字"0 和 1"表示。 逢2进一 二进制数第一位上的1 相当于十进制第一位上的1 二进制数第二位上的1 相当于十进制第二位上的2 二进制数第三位上的1 相当于十进制第三位上的4 二进制数第四位上的1 相当于十进制第四位上的8 二进制数第五位上的1 相当于十进制第五位上的16 ···· 二进制数: 1011 1*2^3 + 0*2^2 + 1*2^1 + 1\2^0 = 11(十进制) 八进制(octal) 指八进制计数系统,基于8的幂,用数字"0~7"表示。 逢8进一 八进制数第一位上的1 相当于十进制第一位上的1 八进制数第二位上的1 相当于十进制第二位上的8 八进制数第三位上的1 相当于十进制第三位上的64 八进制数第四位上的1 相当于十进制第四位上的512 八进制数:451 4*8^2 + 5*8^1 +1*8^0 = 297(十进制) 八进制转换二进制 每个八进制位会对应3个二进制位,如下表: 八进制 等价的二进制 八进制 等价的二进制 0 000 4 100 1 001 5 101 2 010 6 110 3 011 7 111 例如:八进制数 166 的二进制数位 1 110 110 八进制 166 中的 1、6、6 分别对应二进制数 001、110、110 注意:在将八进制转化为二进制后,二进制中的 0 不能省略。

base64原理

谁说我不能喝 提交于 2020-03-12 11:32:51
一、 base64是什么? 按照 RFC2045 的定义,Base64被定义为:Base64内容传送编码被设计用来把任意序列的8位字节描述为一种不易被人直接识别的形式。(The Base64 Content-Transfer-Encoding is designed to represent arbitrary sequences of octets in a form that need not be humanly readable.) 使用的字符包括大小写字母各26个,加上10个数字,和加号“+”,斜杠“/”,一共64个字符,等号“=”用来作为后缀用途。 二、 base64的作用及用途 作用: 实现简单的数据加密,使用户一眼望去完全看不出真实数据内容,base64算法的复杂程度要小,效率要高相对较高。 某些系统或应用,只能使用ASCII字符,例如Email,需使用base64对数据进行编码。 用途: 在MIME中,base64可以用来将binary的字节序列数据编码成ASCII字符序列构成的文本。在Email的传送过程中,由于历史原因,Email只被允许传送ASCII字符,即一个8位字节的低7位(0-127)。因此,如果用户发送了一封带有非ASCII字符(即字节的最高位是1)的Email通过有“历史问题”的网关时就可能会出现问题。网关可能会把最高位置为0。这个时候,问题出现了

mysql主从原理

眉间皱痕 提交于 2020-03-12 03:32:59
1.1 mysql主从同步    参考博客: https://www.cnblogs.com/kevingrace/p/6256603.html   1、mysql主从同步(复制)概念       1. 将Mysql某一台主机数据复制到其它主机(slaves)上,并重新执行一遍来实现的。       2. 复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器。       3. 主服务器将更新写入二进制日志文件,并维护文件的一个索引以跟踪日志循环。       4. 当一个从服务器连接主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置。       5. 从服务器接收从那时起发生的任何更新,然后封锁并等待主服务器通知新的更新。        binlog: 是二进制日志文件,用于记录mysql的数据更新或者潜在更新(比如DELETE语句执行删除而实际并没有符合条件的数据)   2、Mysql支持哪些复制       1. 基于语句的复制: 在主服务器执行SQL语句,在从服务器执行同样语句。        注: MySQL默认采用基于语句的复制,效率较高。一旦发现没法精确复制时, 会自动选基于行的复制。       2. 基于行的复制: 把改变的内容复制过去,而不是把命令在从服务器上执行一遍. 从mysql5.0开始支持       3.

大数据:分享大数据之基础语法

怎甘沉沦 提交于 2020-03-11 16:44:07
大数据:分享大数据之基础语法 1 计算机理论介绍 2 编程基础--进制分类、进制转换 进制 就是进位制。指的是我们来表示一个数字的时候进位的制度。 进制分类 计算机中,常用的进制有以下几种: 进制 描述 示例 备注 二进制 使用0和1来描述所有的自然数 0, 1, 10, 11, 100, 101 使用 0b 开头 八进制 使用0-7来描述所有的自然数 4, 5, 6, 7, 10, 11, 12 使用 0 开头 十进制 使用0-9来描述所有的自然数 6, 7, 8, 9, 10, 11, 12 十六进制 使用0-9, a-f来描述所有的自然数 9, A, B, C, D, E, F, 10 使用 0x 开头 进制转换 十进制转其他进制 辗转相除法,用数字除进制,再用商除进制,一直到商为零结束,最后将每一步得到的余数倒着连接 其他进制转十进制 每一位的数字乘进制的位数-1次方,再将所有的结果累加到一起 二进制与八进制之间的相互转换 每一个八进制位可以等价替换成三个二进制位 每一个十六进制位可以等价替换成四个二进制位 原码、反码、补码 正数 负数 原码 由数字直接计算出的二进制表示形式 最高位表示符号位: 0代表正数, 1代表负数 反码 与原码相同 符号位不变, 其他位按位取反 补码 与原码、反码相同 反码 + 1 注意事项: 数据的存储与运算都是以补码的形式进行的

计算机网络——码元、波特、速率、带宽

北慕城南 提交于 2020-03-11 15:21:35
码元 根据百度百科被锁定词条“ 码元 ”给出的解释 在数字通信中常常用时间间隔相同的符号来表示一个二进制数字,这样的时间间隔内的信号称为(二进制)码元。 而这个间隔被称为码元长度。值得注意的是当码元的离散状态有大于2个时(如M大于2个) 时,此时码元为M进制码元。 一码元可以携带多个比特的信息量。例如,在使用二进制编码时,只有两种不同的码元,一种代表0状态,另一种代表1状态。 知乎有大佬给出了一些形象的解释 https://www.zhihu.com/question/280404107/answer/413911881 作者:途经时光 乐乐 链接:https://www.zhihu.com/question/280404107/answer/530245982 来源:知乎 一个脉冲信号就是一个码元,也就是图中的一个方波就是一个码元。 图片来自中国大学MOOC网络技术与应用课程。图左的3v和-3v就是一个码元中的两种高低变化,一个码元携带1个比特。图右的是四种,一个码元携带2个比特。 看下信号脉冲的图片(有高低起伏变化)。二进制码元有两种脉冲变化形式,四进制有四种,八进制有八种。相对应的,能携带的比特数为1个,2个,3个,因为这种组合能够穷尽穷尽0和1的排列组合方式,不然接收两端对脉冲变化的定义就一定会缺斤少两。而同一时间内,不考虑复用的情况,只能有一个码元进入