MyException - 我的异常网
当前位置:我的异常网» PHP » 从新捡起的知识-字节(Byte)、比特(bit)-计算机常识

从新捡起的知识-字节(Byte)、比特(bit)-计算机常识

www.MyException.Cn  网友分享于:2013-11-16  浏览:0次
重新捡起的知识-字节(Byte)、比特(bit)-计算机常识

    一、序
    毕业已经两年了,曾经在学校学习的知识早已还给老师了,已经很久没有好好学习了。虽然曾经也是高收入群体,但是因为从此再也不写代码了,觉得人生都没有乐趣了,所以果断离职了.....但是看着身边越来越多的技术大牛和高收入人群和之前对比落差太大,心中未免有些不甘,所以重新捡起被遗忘的知识。曾子曰:“吾日三省吾身:为人谋而不忠乎?与朋友交而不信乎?传不习乎”。

    二、比特(bit)、字节(byte)

    bit又称为位,1 byte = 8 bit.  记下来就好,想必都听说过8位机,8位机(bit)有8条线路,每个时钟周期只能处理8个电信号(00001111),组成一个字节(btye),而经常听说32位(bit)、64位(bit)机即是指,在一个时钟周期内可以处理32/64 位(bit).

    我认为字节(byte)是基本的存储单元,比特/位(bit)是CPU基本的运算单元

    1字节(byte)表示的带符号位数字范围,最高位表示符号位,-2^7 ~ 2^7-1,即-128 ~127.为什么是-128-127呢?

    因为最高表示符号位,正数是0,负数是1。

    正数:首位为0,后七位二进制数即为所表示正数的绝对值

    负数:首位为1,负数在现代计算机里一般用补码表示,后七位二进制数的原码+1 (补码 = 原码取反+1,将所有位取反,再加1)。补码

    0000 0000 = 0 

    补码1000 0000 在10进制里表示什么???  最高位为1,所以是负数,计算反码+1。(取反) 127(0111 1111) + 1(0000 0001)= 1*2^6 +1*2^6.......+1*2^0 + 1 = 128, 最高位为1(负数),所以为-128

    0111 1111 = 127

    补码 1111 1111 -1

    1Kb = 1024bit, K意为千, 2的10次方(因为我们日常使用10进位,因为习惯,所以计算机就被设定成了2的10次方的进位,2*2*2*2*2*2*2*2....

    1个字母/数字 占 1个字节,而汉字占两2个字节。因为带符号位的1字节可以表示0~2^7,128个不同的组合,对于数组和字母符号绰绰有余,所以老外的英语学起来比较简单。

    而一个中文汉字在GBK编码里占2个字节,因为中文博大精深,1字节只能表示128个东东根本不够用,因为字节是基本的存储单元,没有听说过1.3个字节或者1.5个字节东西吧,0~128*128个组合足够表示汉字。所以大于127的才有可能是汉字

   所以,一个含有中文的URL编码的解码方式如下,php代码如下:

<?php
function link_urldecode($url) {
  $uri = '';
  $cs = unpack('C*', $url);
  $len = count($cs);
  for ($i=1; $i<=$len; $i++) {
    $uri .= $cs[$i] > 127 ? '%'.strtoupper(dechex($cs[$i])) : $url{$i-1};
  }
  return $uri;
}
?>

    三、网速100M

    我家的网是100M,为什么下载速度不是100MB/s?

    这里的100M是指的是100Mbps(megabits per second),这是的单位是bit....所以我说只有存储才是byte..

100Mbps = 100*1042K bit/s    1byte = 8 bit , 100Mbps / 8 = 12.5MB/s,所以理论的最大下载速度是12.5MB/s.而且这里默认的是下行带宽,100M,上行带宽一般只有2Mbps,实际最大的上传速度只有256KB/s....

链路层,太网的物理特性决定了数据帧的长度为(46+18)-(1500+18),其中的18是数据帧的头和尾,也就是说数据帧的内容最大为1500(不包括帧头和帧尾),即MTU(Maximum Transmission Unit)为1500;  
网络层,因为IP包的首部要占用20字节,所以这的MTU为1500-20=1480; 
传输层,对于UDP包的首部要占用8字节,所以这的MTU为1480-8=1472; 
所以,在应用层,Data最大长度为1472,单位是byte 约等于1.43Kb
2M的上行带宽举例,理论上每秒可以发出179次网络请求。

 

     Mark:2017年10月17日    

文章评论

科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
初级 vs 高级开发者 哪个性价比更高?
初级 vs 高级开发者 哪个性价比更高?
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
我的丈夫是个程序员
我的丈夫是个程序员
中美印日四国程序员比较
中美印日四国程序员比较
5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
每天工作4小时的程序员
每天工作4小时的程序员
“懒”出效率是程序员的美德
“懒”出效率是程序员的美德
漫画:程序员的工作
漫画:程序员的工作
编程语言是女人
编程语言是女人
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
总结2014中国互联网十大段子
总结2014中国互联网十大段子
一个程序员的时间管理
一个程序员的时间管理
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
程序员的一天:一寸光阴一寸金
程序员的一天:一寸光阴一寸金
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
代码女神横空出世
代码女神横空出世
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
旅行,写作,编程
旅行,写作,编程
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
我是如何打败拖延症的
我是如何打败拖延症的
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
为什么程序员都是夜猫子
为什么程序员都是夜猫子
那些性感的让人尖叫的程序员
那些性感的让人尖叫的程序员
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
程序员应该关注的一些事儿
程序员应该关注的一些事儿
做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
Google伦敦新总部 犹如星级庄园
Google伦敦新总部 犹如星级庄园
如何成为一名黑客
如何成为一名黑客
那些争议最大的编程观点
那些争议最大的编程观点
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
程序员都该阅读的书
程序员都该阅读的书
鲜为人知的编程真相
鲜为人知的编程真相
2013年中国软件开发者薪资调查报告
2013年中国软件开发者薪资调查报告
老程序员的下场
老程序员的下场
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
程序员的鄙视链
程序员的鄙视链
程序员和编码员之间的区别
程序员和编码员之间的区别
Java程序员必看电影
Java程序员必看电影
程序员必看的十大电影
程序员必看的十大电影
10个调试和排错的小建议
10个调试和排错的小建议
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有