什么是物理地址?
一、物理地址介绍
概念
物理地址是一种标识符,用来标记网络中的每个设备。同现实生活中收发快递一样,网络内传输的所有数据包都会包含发送方和接收方的物理地址。
由于网络设备对物理地址的处理能力有限,物理地址只在当前局域网内有效。所以,接收方的物理地址都必须存在于当前局域网内,否则会导致发送失败。
在计算机科学中,物理地址(英语:physical address),也叫实地址(real address)、二进制地址(binary address),它是在地址总线上,以电子形式存在的,使得数据总线可以访问主存的某个特定存储单元的内存地址。在和虚拟内存的计算机中,物理地址这个术语多用于区分虚拟地址。尤其是在使用内存管理单元(MMU)转换内存地址的计算机中,虚拟和物理地址分别指在经MMU转换之前和之后的地址。在计算机网络中,物理地址有时又是MAC地址的同义词。这个地址实际上是用于数据链路层,而不是如它名字所指的物理层上的。
计算方法
在实地址方式下,物理地址是通过段地址乘以16加上偏移地址得到的。而16位的段地址乘以16等同于左移4位二进制位,这样变成20位的段基地址,最后段基地址加上段内偏移地址即可得到物理地址。
20位物理地址计算方法如下:
物理地址=段地址*16d+偏移地址。
延伸阅读:
二、不对齐的寻址
根据计算机体系的不同,对内存的不对齐的访问对计算机的性能可能会有所损害。例如,像Intel 8086这种数据总线为16位的计算机,对偶数地址的访问会更有效率。在那种情况下,获取一个16位的值只要读一次内存以及在数据总线上传送一次数据。显然,如果那16位的值储存在奇数地址上,处理器实际上要读两次内存,即,一次用于读存储在低地址的部分,另一次读存储在高地址的部分;两次都要把读到的数据丢弃一半。
以上就是关于物理地址的内容希望对大家有帮助。

相关推荐HOT
更多>>
为什么Java是解释型语言而Python不是?
一、Java是解释型语言而Python不是的原因Java和Python都是非常流行的编程语言,但它们的编译方式不同。Java是一种解释型语言,而Python则是一种...详情>>
2023-10-19 22:17:12
axios和ajax区别?
一、axios和ajax区别axios是通过promise实现对ajax技术的一种封装,就像jQuery实现ajax封装一样。简单来说ajax技术实现了网页的局部数据刷新,a...详情>>
2023-10-19 19:35:00
jndi和jdbc区别?
一、jndi和jdbc区别jdbcJavaDatabaseConnectivity(JDBC)是一个标准的JavaAPI,它由一组类和接口组成,Java应用程序开发人员使用它来访问数据库...详情>>
2023-10-19 16:29:05
Java和HTML有什么区别和联系?
一、Java和HTML的区别和联系区别Java是一门编程语言,一直在不断的发展更新目前JDK14,对于处于信息高速发达的今天,Java技术已经无处不在、各...详情>>
2023-10-19 14:41:28