数据在内存中是如何存取和运算的?

来源:百度知道 编辑:UC知道 时间:2024/05/20 00:43:55
现在学到C语言的指针了,但是许多地方都不明白,尤其是涉及什么物理地址存储和实际地址之类的。
那位高手能详细的解释一下数据在计算机内部是如何进行存储和运算的?
比如说:
要计算一个 2+3=5的问题。

内存就相当于一排编了号的箱子,箱子里可以放数据,这些数据是现实的反映,如五个苹果的数据放在6号箱,则箱子里的5就是这“五个苹果”的反映;箱子里也可以放其他箱的号码,例如在3号箱放有6号箱的号码“6”,这个号码在电脑以外是没意义的,它只是反映自己这些箱子的组织(内存的状态),电脑读出这个“6”时并不是把它理解成“6个苹果”,而是理解成6号箱,电脑如果想知道有几个苹果,就可以去找6号箱了。

现在假设1号箱内放了2,4号箱放了3。这个1号、4号就分别是2和3的地址了。

光是有内存计算机是不工作的,还有一系统的指令(就是程序的执行代码了),它会告诉电脑,应该从1号箱拿出数2,从4号箱拿出数3。当然,电脑从内存中拿出来的这些数也不是随便放的,它会把这两个数放进运算器(CPU内的一个功能部件),然后通知运算器,应该做“加”的操作。然后运算器就会自己算出结果,电脑可以根据指令的要求,把结果送回内存,例如放回5号箱中,这时5号就是运算结果的地址。

物理地址和实际地址在你刚开始学习编程的时候可以不管,以后你学过计算机的操作系统课以后就会慢慢明白了。