在学微机的时候,王爽《汇编语言》这本书上写著:从CPU的角度,可用将这些寄存器当作是埠,会对它们进行统一编址,从而建立了一个统一的埠地址空间,每一个埠在地址空间都有一个地址。我们在访问埠的时候其实是CPU通过埠地址来定位埠的,因为埠所在的晶元和CPU通过汇流排相连,所以埠地址和内存地址一样,通过地址汇流排来传送。
在学网路编程的时候,也就是计算机网路的时候,说埠号有65535个,那么65535个埠号对应著65535个计算机内部的寄存器吗?
两个埠虽然文字描述相同,但实际上是完全不同的东西。
网路中所说的埠是TCP/IP协议的一部分,是软体(操作系统调用相关网路协议的服务程序)实现的。
而汇编里所说的埠,是硬体实现的,比如IN OUT 等汇编语句,会告诉CPU应该去什么物理地址读写数据。
各种存储器都和CPU的地址线、数据线、控制线相连,CPU在操控它们的时候都要把它们当作内存来对待,把它们总地会去看做是一个由若干存储单元组成的逻辑存储器,这个逻辑存储器,我们把它称为内存地址空间