怎么比较全面的回答这个问题?
能想到数值直接存在访问的地址中(因为数据类的大小固定,所以只要知道头地址就能访问吗?),比引用类型效率高。
1
ethego 2019-11-08 18:47:03 +08:00
地址中的只是一堆毫不重要的二进制,怎么在真实世界中解读和使用这堆二进制才是最重要的,后者依赖类型。
|
2
mxT52CRuqR6o5 2019-11-08 18:48:57 +08:00 via Android
那不就是汇编吗?抽象太低了
|
3
feiffy 2019-11-08 18:50:10 +08:00 via Android
基础类型长度是固定的,知道了地址可以直接取数据,引用类型还要再访问一次引用的地址
|
4
loading 2019-11-08 18:50:44 +08:00 via Android
建议去学一下汇编
|
5
misaka19000 2019-11-08 18:50:59 +08:00
为了方便程序员呗
|
6
hoyixi 2019-11-08 18:52:07 +08:00
存储都是二进制,看你把它当作什么, 比如 65 和字符 A,没有数据类型的话,拿到数据也不知道到底是什么意义
2 楼说的汇编也异曲同工,底层指令本质也是存的二进制,那一堆 01,你把它当指令就变成程序了,当数据,就变成某种数据了,到底哪种数据?看你怎么定义和解释,比如数据类型 |
7
taogen 2019-11-08 19:02:02 +08:00 via Android
常用的数据类型(数值型和字符型)和操作符(四则运算、逻辑运算等)的功能帮你写好了,你直接用就行了。难道要自己写解释器和编译器。
|
8
timoWong 2019-11-08 19:06:41 +08:00
操控数据类型的本质,就是对内存中的 0 和 1 在做逻辑运算,基本数据类型规定了运算的范围。如果没有基本数据类型,那么运算范围将无法确认。
|
9
taogen 2019-11-08 19:09:24 +08:00 via Android
高级语言最终要转换为汇编语言,看下汇编语言的有哪些操作和数据类型,看下 CPU 的算术逻辑单元 (ALU) 是怎么工作的
|
10
VDimos 2019-11-08 19:18:07 +08:00 via Android
基础类型就是标准而已
|
11
godloveplay OP 谢谢大家,我理解了。
|
12
frankyzf 2019-11-08 21:24:06 +08:00 via Android
性能?
|
13
SmiteChow 2019-11-09 08:54:06 +08:00
因为计算机能处理的只是数据,你的代码也只是一堆数据,基础数据类型就是语言的原子,有了它就可以组装出所有场景。
|