物理地址和逻辑地址

1、物理地址

内存的结构:由若干存储单元组成,以字节为单位。
存储最小单位:“二进制位”,包含信息为0或1
最小编址单位:字节,一个字节包含八个二进制位
内存地址:为了便于CPU访问,给每个存储单元一个编号(第一个字节的地址是0,后面依次 是1、2、3,等等),也称为物理地址或绝对地址。内存地址是无符号整数,用16进制来表示
内存地址空间(存储空间):内存地址的集合,也称物理空间,它是一维线性空间,其编址为0,1,2,…,n-1

2、逻辑地址(程序地址,相对地址,虚地址)

用户编制的源程序,存在于程序员建立的符号名字空间内,经过汇编或编译后形成若干目标代码,这些目标代码连接后形成可装入程序,这些程序通常采用相对地址的形式,其首地址为0,其余指令中的地址都相对于首地址而编址。不能用逻辑地址在内存中读取信息
作业地址空间(地址空间):由逻辑地址组成的空间,也称为地址空间。

通俗一点的来说,程序员在进行编码的时候,对于内存的情况是不了解的,就算了解一台计算机也没法了解别的计算机,不可能直接指定物理地址,
例如,在2000号存储单元存放一个char数据,也许2000号在本机是空闲的,而在别的计算机运行,可能存了别的数据,这样写程序显然不合适,所以引入了逻辑地址。
程序员在编码的时候不用考虑内存的情况,所有程序都从0号地址开始编码,运行时要完成由逻辑地址到物理地址的地址映射,这样才能正确运行程序。

猜你喜欢

转载自blog.csdn.net/wayway0554/article/details/79854127