为什么 io 包一般以 byte 数组做为处理单位?

本文写于 2021 年 9 月 7 日

编程语言中时常会出现 []byte 作为类型的操作。特别是在网络传输或是 io 操作中,例如 socket 的消息、io.ReaderRead 方法等等。

那么为什么会这样呢?

明明计算机储存设备的最小单位是 bit 呀。

我们都知道计算机使用二进制进行储存,也就是 bit,意为“位”或“比特”。bit 是计算机中最小的数据单位,是计算机存储设备的最小单位,每一位的状态只能是 0 或 1。

而 byte 意为“字节”,8 个 bit 构成 1 个 byte,而 byte 是计算机「处理数据」的基本单位

所以,我们知道了:

  1. bit 是计算机进行储存的最小单位;
  2. byte 是计算机进行处理的基本单位。

因此 io 和网络操作,经常会以 byte 数组作为单位。

(完)

最新文章

  1. JavaWeb路径问题打包总结--小心出门右转404
  2. go并发
  3. VS中Debug和Realease、及静态库和动态库的区别整理(转)
  4. 通过js动态生成页面表格
  5. asp.net mvc ClaimsIdentity 授权研究 (还是测试版 有bug)
  6. uva 1339
  7. C++学习基础七——深复制与浅复制
  8. OpenJudge计算概论-短信计费
  9. EntityFreamWork和Mvc 精品知识点
  10. 有return如果是try catch finally运行命令
  11. 关于input 的选中,自定义input[type="checkbox"]样式
  12. 方法的重写与重载的区别(Override与Overload)。重载的方法是否可以改变返回值的类型
  13. a标签伪类选择器以及伪元素:hover的案例
  14. 《Whitelabel Error Page 404》 对于Springboot初学者可能出现问题的原因
  15. 自建yum仓库yum源
  16. python阶段性总结
  17. Zip包解压工具类
  18. linux每日命令(28):chgrp命令
  19. 二分求幂/快速幂取模运算——root(N,k)
  20. 浅谈MSSQL2012中的列存储索引(columnstore indexes)

热门文章

  1. 学习RabbitMQ(二)
  2. 『忘了再学』Shell基础 — 7、Bash基本功能(多命令顺序执行)
  3. H.265
  4. PCB中加入任意LOGO图文说明 精心制作
  5. 首次写iPad布局感想(H5)
  6. Docker镜像构建之Dockerfile
  7. 更改spinner字体大小
  8. mysql-加密函数
  9. 跳转到下一页面时,必须先勾选阅读xx须知/协议才可跳转功能
  10. Mysql_事务_存储过程_触发器