CS61C 2020计算机组成原理Lecture03

在这里插入图片描述

1、C Operators

Operator Precedence

在这里插入图片描述

2、Arrays

1、Pointing to Different Size Objects

在这里插入图片描述

2、sizeof()

在这里插入图片描述

3、 Struct Alignment

四字节边界:指的是内存地址能够被4整除的情况。在计算机内存中,每个存储位置都有一个唯一的地址。当数据存储在以4为间隔的地址上时,就说它位于4字节边界上。这是因为4字节(等同于32位)的数据块在这些地址上能够得到最优的存取效率。如果我们有一个内存地址序列,从0开始计数,则地址0, 4, 8, 12等都是4字节边界的地址。这意味着一个32位(或4字节)的数据块可以从这些地址开始存储,而不会跨越不同的4字节边界。

Half-word boundary” 在计算机内存中通常指的是2字节对齐的边界:一个2字节对齐的边界意味着数据应该存储在内存地址是2的整数倍的位置上。例如,内存地址0, 2, 4, 6, 8等都是2字节边界的地址。与4字节边界类似,半字边界的对齐通常是为了优化内存访问的性能。不遵守这种对齐要求可能会导致性能下降或者,在一些严格要求对齐的系统中,可能会导致运行错误。

如下图,要做到对齐的话,需要填充到多少字节?

在这里插入图片描述
在这里插入图片描述
但是可以看出这样不够节省空间,有没有节省空间的方法呢?

在这里插入图片描述

4、Array Basics

Accessing in Array

在这里插入图片描述

Array and Pointers

在这里插入图片描述

Array and Pointer Example

在这里插入图片描述

Arrays Stored Differently Than Pointers

在这里插入图片描述
Address of an array is meaningless, it just happens to have the same value as the address of the first element of the array.

Arrays and Functions

在这里插入图片描述

3、Strings

1. C String Standard Functions

在这里插入图片描述

2. String Examples

在这里插入图片描述

4、More pointers

1、Pointer Arithmetic

在这里插入图片描述
在这里插入图片描述

2、Increment and Dereference

2个例题:

在这里插入图片描述
在这里插入图片描述

2、 Pointer Misc

Pointers and Allocation

在这里插入图片描述

Pointers and Structures

在这里插入图片描述

Pointers to Pointers

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5、 Summary

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值