程序是怎样运行起来的ch04_内存

本文深入探讨了程序员为何必须理解内存,包括内存的物理结构、逻辑容量及其与数据总线的关系。文章还解释了如何利用内存创建丰富多样的数据结构,如数组、栈、队列、链表和二叉查找树,以及这些数据结构在实际编程中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.为什么程序员必须要了解内存?
答:虽然内存的物理结构就是IC构成的,每个内存单元也都有固定的物理地址。存储单元的物理地址是唯一的。Intel8086CPU有20根地址线,因此其存储空间可达2的20次方=1M个字节单元(1MB)。地址都是从0开始的,在20位地址线的存储空间中采用十六进制表示的物理地址范围是00000H~FFFFFH。
但是我们可以通过设计程序将内存变换为非常丰富的数据结构。不同的数据结构指的是逻辑结构,是通过控制读写顺序来定义和区分的。
2.内存的物理结构?
2.1内存的容量取决于什么?
自答:物理容量取决于内存IC的个数,比如一个内存IC如果有10个地址信号引脚和8个数据信号引脚,则容量为1KB,512K个这样的IC便是512M。
逻辑容量取决于数据总线的位数。32位的数据总线寻址能力为4GB
3.为什么使用数组能使编程更加高效?
3.1栈和队列的逻辑实现以及应用场景?
3.2链表和二叉查找树的逻辑实现和功能?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值