推酷
文章
站点
主题
关键词
清单
New
图书
周刊
编程狂人
创业周刊
科技周刊
一周拾遗
计算机组成 -- 二进制编码
时间 2020-04-06 19:48:54
机智的小鸣
原文
http://zhongmingmao.me/2020/01/11/computer-organization-binary/
主题
软件开发
原码表示法
0011
为3,
1011
为-3
缺点:
0000
和
1000
都表示为0
浪费 + 模凌两可
由此诞生了
补码表示法
,其实就是一个简单的
翻转
而已
用补码表示负数,使得
整数的相加
变得容易,不需要做任何特殊处理,当成
普通的二进制相加
即可
字符串
ASCII
码类似一个字典,用8位二进制中的128个不同的数字,
映射
到128个不同的字符里
a
在ASCII里面是第97个,二进制为
0110 0001
,对应的十六进制为
0x61
字符串
9
用
0011 1001
来表示,字符串
15
用
0011 0001
和
0011 0101
来表示,
占用更多的空间
因此
存储数据
的时候,要采用
二进制序列化
的形式,
而不是简单地把数据通过CSV或者JSON这样的
文本格式
存储来进行序列化
不管是整点数,还是浮点数,采用
二进制序列化
比
存储文本
能节省不少空间
字符集
(Charset)和
字符编码
(Character Encoding)
字符集
:字符的集合
Unicode是字符集
,包含150种语言的14万个字符
字符编码
:对于字符集里的这些字符,怎么
用二进制表示
出来的一个
字典
Unicode可以用
UTF-8、UTF-16、UTF-32
来进行编码,
存储成二进制
某段文本用编码A存储下来,另外一个程序用编码B进行解码和展示,就会出现
乱码
收藏
纠错
推荐文章
1.
自动获取vlookup函数的第三参数,再也不用一列一列的数了
2.
Rxjs TENET 问题解析
3.
LocalDateTime、OffsetDateTime、ZonedDateTime互转,这一篇绝对喂..
4.
一个IO控制很多个LED,这个技能你get到了吗
5.
Arduino + OLED 屏实现位图显示
6.
一个小细节,让你的图表脱颖而出
我来评几句
错误
登录后评论
已发表评论数(
)
没有更多评论了^^
更多评论
评论加载失败,
重新加载
相关站点
机智的小鸣
+订阅
热门文章
1.
Rxjs TENET 问题解析
2.
设计模式系列| 建造者模式
3.
IntelliJ IDEA 20 周岁了!
4.
JavaScript 中的函数式编程:函数、组合与柯里化
5.
Kubernetes 源码分析之 kubelet(五)
收藏到推刊
创建推刊
请填写推刊名
描述不能大于100个字符!
权限设置:
公开
仅自己可见
×
文章纠错
邮箱地址
错误类型
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致
补充信息
×
提示
我来评几句
登录后评论已发表评论数()