计算机数字的计算都是二进制的,但是不同的编码是否是否会生成不同的二进制

WBOY
发布: 2016-08-04 09:20:10
原创
1257 人浏览过

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

回复内容:

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

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

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

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

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

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

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

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板