内存地址

时间:2024-04-04 17:33:43编辑:奇事君

内存地址的概念

系统 RAM 中的特定位置,通常以 十六进制的数字表示。在8086的实模式下,把某一段寄存器左移4位,然后与地址ADDR相加后被直接送到内存总线上,这个相加后的地址就是内存单元的物理地址,而程序中的这个地址就叫逻辑地址(或叫虚地址)。在80386的 保护模式下,这个 逻辑地址不是被直接送到内存总线,而是被送到 内存管理单元(MMU)。MMU由一个或一组芯片组成,其功能是把 逻辑地址映射为物理地址,即进行 地址转换。当使用80386时,我们必须区分以下三种不同的地址:逻辑地址:机器语言指令仍用这种地址指定一个操作数的地址或一条指令的地址。这种 寻址方式在Intel的分段结构中表现得尤为具体,它使得MS-DOS或Windows程序员把程序分为若干段。每个 逻辑地址都由一个段和 偏移量组成。线性地址:线性地址是一个32位的无符号整数,可以表达高达2^32(4GB)的地址。通常用16进制表示 线性地址,其取值范围为0x00000000~0xffffffff。物理地址:也就是内存单元的实际地址,用于芯片级内存单元 寻址。物理地址也由32位 无符号整数表示。MMU是一种硬件电路,它包含两个部件,一个是分段部件,一个是分页部件,在本书中,我们把它们分别叫做分段机制和分页机制,以利于从逻辑的角度来理解硬件的实现机制。分段机制把一个逻辑地址转换为 线性地址;接着,分页机制把一个线性地址转换为 物理地址。


内存地址号是什么

内存地址是一种用于软件及硬件等不同层级中的数据概念,用来访问电脑主存中的数据。内存地址有许多类型。换句话说,一个电脑,甚至在一个程序内,可能即存在数个不同的内存“定址空间”。电脑的内存(尤其是指主存)是由许多“内存地址”所组成的,每个内存地址都有一个“物理地址”,能供CPU(或其他设备)访问。一般,只有如BIOS、操作系统及部分特定之公用软件(如内存测试软件)等系统软件。能使用机器码的运算对象或寄存器对物理地址定址,指示CPU要求内存控制器之类的硬件设备,使用内存总线或系统总线,亦或分别之控制总线、地址总线及数据总线,运行该程序之命令。内存控制器的总线是由数条并行的线路所组成的,每条线路表示一个比特。总线的宽度因此依电脑不同,决定了可定址之存储单位数量,以及每一单位内的比特数量。计算机程序使用内存地址来运行机器码、存储及截取数据。大多数的应用程序无法得知实际的物理地址,而是使用电脑的内存管理单元及操作系统的内存映射,为“逻辑地址”或虚拟地址定址。

上一篇:5寸照片尺寸

下一篇:工厂模式