php - 计算机数字的计算都是二进制的,但是不同的编码是否是否会生成不同的二进制
阿神
阿神 2017-04-11 09:21:54
[PHP讨论组]

例如 计算 2*3 计算机会先转成二进制进行计算,如果是不同的编码形式,是不是对应着不同的二进制

阿神
阿神

闭关修行中......

全部回复(4)
巴扎黑

是的,不同的编码会有不同的记录数据的方法,当然他们也会有相似相同的地方。
编码主要针对的是字符串,在数字存储是也有大小端序之分,都是不同的二进制数据记录规则的体现。

PHP中文网

题主有几个基础概念先得弄清楚。

首先你说的应该是在源代码中的“2*3”,源代码文件的字符编码可以是不同的,它们的二进制表示也不同。然后你提到了“计算”,那肯定得先经过编译生成目标代码才能被执行(无论是解释执行还是cpu指令执行),假如你是生成的机器代码,那么在同一台机器上,数字存储的格式是一样的。假如是生成的某个虚拟机的字节码,那么数字格式和字节码的编码一样。

巴扎黑

你先得搞清楚数据的类型。你计算2*3是两个整数计算,也就是10*11(二进制),并没有编码之分,你放到不同的架构上只是表示整数的长度不同而已。

你说的编码是针对字符的,比如2和3的ASCII就分别是0110010和0110011,这并不是用来计算的。

伊谢尔伦

是的,随便用什么编码,随便怎么存储。
但是必须保证计算结果相同。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号