精华内容
下载资源
问答
  • 寻址网定位
    2021-07-17 03:12:17

    [xún zhǐ]

    寻址

    语音

    编辑

    锁定

    上传视频

    寻址是数据恢复技术的基础,是定位数据和扇区的关键。寻址这个概念比较抽象,简单的说是磁头在盘片上定位数据的一个过程。如果你想找到你的计算机中的一个文件,你可能会在Windows中先打开我的电脑、分区、文件夹,再打开你要找的文件。这是表面的寻找文件的过程,而磁头在盘片的寻找过程就是寻址。 寻址在数据恢复中为什么非常重要?因为当数据出现丢失的情况后,你在我的电脑、分区、文件夹下就找不到这个文件了,甚至找不到文件夹和分区。

    计算机有多种寻址方式,如立即数寻址方式,寄存器寻址,存储器寻址方式,与I/0端口有关的寻址方式,又包括直接端口寻址和间接端口寻址。[1]

    中文名

    寻址

    外文名

    Addressing类    型

    计算机术语

    领    域

    计算机操作系统

    分    类

    逻辑寻址和物理寻址

    寻址逻辑寻址

    语音

    逻辑寻址是将硬盘所有扇区认为是一个柱形,扇区从0开始一直排到无穷大。当然硬盘的容量决定扇区的总数。在逻辑寻址中,某一个扇区的描述就是某某某某(数字)扇区。

    寻址物理寻址

    语音

    物理寻址也称C.H.S(Cylinder、Head、Sector)寻址。Cylinder、Head、Sector这三个参数在很多硬盘表面的标签上都有标注其数值。这是硬盘容量大小的计算基础。物理寻址中对某扇区的表述为某某Cylinder某某Head的某某Sector。

    硬盘容量=盘面数×柱面数×扇区数×512字节。

    寻址寻址方式简介

    语音

    寻址立即数寻址方式

    操作数直接存放在指令中,紧跟在操作码之后的寻址方式就是立即数寻址方式。例如:MOV AX,2345H MOV AL,0EH 。[1]

    寻址寄存器寻址

    操作数存放在CPU的内存寄存器时,可在指令中指出寄存器名,这就是寄存器寻址方式。例如:MOV AX,BX ;ADD AX,BX。[1]

    寻址存储器寻址方式

    8086指令系统提供了以下5种针对存储器的寻址方式。直接寻址、寄存器间接寻址、寄存器相对寻址、基址加变址寻址和相对基址加变址寻址。用于说明操作数所在存储单元的地址。由于总线接口单元BIU能根据需要自动引用段寄存器得到段值,所以这五种方式也就是确定存放操作数的存储单元有效地址EA的方法。有效地址EA是一个16位的无符号数,在利用这五种方法计算有效地址时,所得的结果认为是一个无符号数。 [1]

    (1).直接寻址: 指令中给出的地址码即为操作数的有效地址,就是直接寻址方式

    (2).寄存器间接寻址方式

    (3).寄存器相对寻址方式

    (4).基址变址寻址方式

    (5).相对基址变址寻址方式[1]

    寻址寻址的区别和应用

    语音

    逻辑寻址方式和物理寻址方式目前都在使用,很多软件也都可以用两种寻址方式进行定位。不过,由于物理寻址方式相对比较复杂,采用三数字进行定位,硬盘大小不同数值上限不同,起始不同(Cylinder和Head从0起始,Sector从1起始)等等原因,在数据恢复技术中更多的使用逻辑寻址方式完成定位。

    寻址寻址操作方法

    语音

    就是指定指令要进行操作的地址。给定指令操作的地址方法,就是寻址方法。完整的一条指令,应该包含指令符+操作数(当然不包括那些单指令,比如NOT等)。其中的操作数是指令要执行的目标,也就是指令要进行操作的地址。

    我们知道,在PLC中划有各种用途的存储区,比如物理输入输出区P、映像输入区I、映像输出区Q、位存储区M、定时器T、计数器C、数据区DB和L等,同时我们还知道,每个区域可以用位(BIT)、字节(BYTE)、字(WORD)、双字(DWORD)来衡量,或者说来指定确切的大小。当然定时器T、计数器C不存在这种衡量体制,它们仅用位来衡量。由此我们可以得到,要描述一个地址,至少应该包含两个要素:1、存储的区域

    2、这个区域中具体的位置比如:AQ2.0

    其中的A是指令符,Q2.0是A的操作数,也就是地址。这个地址由两部分组成:Q:指的是映像输出区; 2.0:就是这个映像输出区第二个字节的第0位。由此,我们得出,一个确切的地址组成应该是:〖存储区符〗〖存储区尺寸符〗〖尺寸数值〗.〖位数值〗。

    分类:

    直接寻址,简单的说,就是直接给出指令的确切操作数. 直接寻址方式常用于处理内存单元的数据,其操作数是内存变量的值,该寻址方式可在64K字节的段内进行寻址。注意:立即寻址方式和直接寻址方式的书写格式的不同,直接寻址的地址要写在括号“[”,“]”内。在程序中,直接地址通常用内存变量名来表示,如:MOV BX, VARW,其中,VARW是内存字变量。

    间接寻址就是间接的给出指令的确切操作数。间接寻址方式计有两大类型:存储器间接寻址和寄存器间接寻址。

    存储器间接寻址指针,是作为指定的存储区域的确切数值单元来运用的。也就是说,指针不包含区域标识,它只是指明了一个数值。

    存储器间接寻址的地址给定格式是:地址标识符+指针。指针所指示存储单元中所包含的数值,就是地址的确切数值单元。

    存储器间接寻址具有两个指针格式:单字和双字。

    单字指针是一个16bit的结构,从0-15bit,指示一个从0-65535的数值,这个数值就是被寻址的存储区域的编号。

    双字指针是一个32bit的结构,从0-2bit,共三位,按照8进制指示被寻址的位编号,也就是0-7;而从3-18bit,共16位,指示一个从0-65535的数值,这个数值就是被寻址的字节编号。

    指针可以存放在M、DI、DB和L区域中,也就是说,可以用这些区域的内容来做指针。

    单字指针和双字指针在使用上有很大区别。单字指针的存储器间接寻址只能用在地址标识符是非位的场合;双字指针由于有位格式存在,所以对地址标识符没有限制。也正是由于双字指针是一个具有位的指针,因此,当对字节、字或者双字存储区地址进行寻址时,必须确保双字指针的内容是8或者8的倍数。[2]

    参考资料

    1.

    寻址方式

    .百度文库[引用日期2015-02-11]

    2.

    间接寻址

    .百度文库.2008-08-09[引用日期2015-02-15]

    更多相关内容
  • 内容寻址网络性能的优化及内容的有效定位.doc
  • 设计了一种基于内容寻址网络的P2P网络语义Web服务的定位机制,以保证每个共享服务按领域划分,按被所有节点所共享的公共Web节点来注册.原型系统运行表明,该架构有助于克服传统公共Web服务结构上的单一节点失败问题,...
  • 在Arduino系统平台上实现通过超声波进行定位寻址程序
  • 研究LED灯在虚拟显示终端中动态定位与自动寻址的地图显示方法,克服现有LED灯产品控制的地域限制、功能限制以及集群控制场合下个体识别困难等问题,结合距离定位技术,提供一种通过地图对LED灯直接定位寻址的便利...
  • 浅析基于GPS定位寻址的停车预约系统的设计与开发.pdf
  • 多种寻址方式定位内存地址

    千次阅读 2017-04-02 18:56:23
    多种寻址方式定位内存地址

    当数据存放在内存中时,我们可以使用多种方式来给定这个内存单元的偏移地址,这种定位内存单元的方法被称为寻址方式。
    这里写图片描述

    1. 直接寻址

    寻址方式:
    [idata]
    含义:
    EA=idata
    寻址过程:
    例: 上图中的 mov ax,ds:[000E]
    CS和IP中的地址通过地址加法器进行移位相加得到代码的物理地址,通过地址总线进入内存,取出相应地址的机器码000EA1,通过数据总线传到指令缓冲寄存器,读取指令判断是直接寻址,则通过段地址ds和偏移地址[000E]得到数据的物理地址,在内存中取出。

    2.寄存器间接寻址

    寻址方式:
    [bx]
    含义:
    EA=(bx)
    寻址过程:
    例: 上图中的 mov ax,[bx]
    CS和IP中的地址通过地址加法器进行移位相加得到代码的物理地址,通过地址总线进入内存,取出相应地址的机器码078B,通过数据总线传到指令缓冲寄存器,读取指令判断是寄存器间接寻址,则通过段地址ds和寄存器BX提供的偏移地址得到数据的物理地址,在内存中取出。

    3.寄存器相对寻址

    寻址方式:
    [bx+idata]
    含义:
    EA=(bx)+idata
    寻址过程:
    例: 上图中的 mov ax,[bx+1]
    CS和IP中的地址通过地址加法器进行移位相加得到代码的物理地址,通过地址总线进入内存,取出相应地址的机器码01478B,通过数据总线传到指令缓冲寄存器,读取指令判断是寄存器相对寻址,则通过段地址ds和寄存器BX提供的内容加上一得到偏移地址从而得到数据的物理地址,在内存中取出。

    4.基址变址寻址

    寻址方式:
    [bx+si] ; [bx+di]
    含义:
    EA=(bx)+(si) ; EA=(bx)+(di)
    可以表示为[bx][si],相当于一个二维数组
    寻址过程:
    例: 上图中的 mov ax,[bx+si]
    CS和IP中的地址通过地址加法器进行移位相加得到代码的物理地址,通过地址总线进入内存,取出相应地址的机器码008B,通过数据总线传到指令缓冲寄存器,读取指令判断是基址变址寻址,则通过段地址ds和寄存器BX提供的内容加上源寄存器SI提供的内容得到偏移地址从而得到数据的物理地址,在内存中取出。

    5.相对基址变址寻址

    寻址方式:
    [bx+si+idata] ; [bx+di+idata]
    含义:
    EA=(bx)+(si)+idata ; EA=(bx)+(di)+idata
    寻址过程:
    例: 上图中的 mov ax,[bx+si+1]
    CS和IP中的地址通过地址加法器进行移位相加得到代码的物理地址,通过地址总线进入内存,取出相应地址的机器码01408B,通过数据总线传到指令缓冲寄存器,读取指令判断是相对基址变址寻址,则通过段地址ds和寄存器BX提供的内容加上源寄存器SI提供的内容再加上一得到偏移地址从而得到数据的物理地址,在内存中取出。

    6.为什么我们需要这么多的寻址方式

    这是为了在效率和方便性上找一个平衡。立即数寻址和寄存器寻址在效率上是最快的,但寄存器仅有几个非常宝贵不可能将操作数都存入其中等待使用,立即数的使用场合也非常有限,这样就需要将数据保存在内存中,然后使用直接寻址、寄存器间接寻址、寄存器相对寻址、基址加变址寻址、相对基址加变址寻址这些寻址方式将内存中的数据移入寄存器中。
    (摘自http://m.blog.csdn.net/article/details?id=6911132

    7.应用举例

    问题1:编程将datasg段中每个单词的头一个字母改为大写字母。
    assume cs:codesg,ds:datasg
    datasg segment
    db ‘1. file ’
    db ‘2. edit ’
    db ‘3. search ’
    db ‘4. view ’
    db ‘5. options ’
    db ‘6. help ’
    datasg ends
    codesg segment
    start: ….…
    mov 4c00h
    int 21h
    codesg ends
    end start
    这里写图片描述
    注意这里定义的字符串后面是有空格个,凑成的一行16个字节

    直接寻址方式
    [bx+idata] 起始bx设为0,为第一行第一个单元的地址,idata设为3,表示这一行第三个单元即单词首字母

    mov ax,datasg
    mov ds,ax
    mov bx,0
    mov cx,6      ;循环六次
    s: mov al,[bx+3]
    and al,11011111b  ;与运算,小写变成大写
    mov [bx+3],al
    add bx,16       ;bx加16,跳到下一行开始位置

    问题2:编程将datasg段中每个单词改为大写字母
    assume cs:codesg,ds:datasg
    datasg segment
    db ‘ibm ’
    db ‘dec ’
    db ‘dos ’
    db ‘vax ’
    datasg ends
    codesg segment
    start: ……
    codesg ends
    end start
    这里写图片描述
    注意这里定义的字符串后面是有空格个,凑成的一行16个字节

    寄存器间接寻址二重循环
    4 个字符串,可以看成一个 4行16列的二维数组,要修改二维数组的每一行的前3列,则构造4x3次的二重循环

    mov ax,datasg
    mov ds,ax
    mov bx,0
    mov cx,4
    s0: mov si,0
    mov cx,3
    
    s: mov al,[bx+si]
    and al,11011111b
    mov [bx+si],al
    inc si
    loop s    ;内层循环
    
    add bx,16
    loop s0   ;外层循环

    但是这样做只有一个cx,执行完内层循环后就变成0了,无法完成外层循环
    这里可以用栈保存cx

    stacksg segment
    dw 0,0,0,0,0,0,0,0
    stacksg ends
    
    mov ax,stacksg
    mov ss,ax
    mov sp,16
    mov ax,datasg
    mov ds,ax
    mov bx,0
    mov cx,4
    
    s0: push cx   ;将外层循环的cx值压栈 
    mov si,0
    mov cx,3     ;cx设置为内存循环的次数
    
    s: mov al,[bx+si]
    and al,11011111b
    mov [bx+si],al
    inc si
    loop s       
    
    add bx,16
    pop cx       ;从栈顶弹出原cx的值,恢复cx
    loop s0
    展开全文
  • 步骤 1:找到顶层网络 步骤 2:找到下一层网络 步骤 3:找到再下一级网络 步骤 4:定位设备 路由(Routing) 总结 QA 路由和寻址的区别是什么? 127.0.0.1, localhost, 0.0.0.0 有什么不同 Pre 如果说传输层协议,...

    在这里插入图片描述


    Pre

    如果说传输层协议,除了 TCP/UDP,我们还可以有其他选择,比如 Google 开发的 QUIC 协议,帮助在传输层支持 HTTP 3.0 传输。

    但是在网络层,IP 协议几乎一统天下。IP 协议目前主要有两个版本 IPv4 和 IPv6。这一讲我们先介绍 IPv4 协议。

    IPv4使用范围很大,平时工作中很容易遇到,比如开发场景、网络优化场景、解决线上问题场景等。相信你经常会碰到一些和 IP 协议相关的名词,比如一道常见的面试题目:路由和寻址的区别是什么?

    因此,学习 IPv4 还是非常有意义的。接下来,就带着对上面的问题,开启今天的学习。


    什么是 IP 协议?

    IP 协议(Internet Protocol)是一个处于垄断地位的网络层协议。 IPv4 就是 IP 协议的第 4 个版本,是目前互联网的主要网络层协议。IPv4 为传输层提供 Host-To-Host 的能力,IPv4 需要底层数据链路层的支持

    在这里插入图片描述
    IP 协议并不负责数据的可靠性。传输数据时,数据被切分成一个个数据封包。IP 协议上层的传输层协议会对数据进行一次拆分,IP 协议还会进一步进行拆分。进行两次拆分是为了适配底层的设备。

    数据在网络中交换(封包交换算法),并不需要预先建立一个连接,而是任由数据在网络中传输,每个节点通过路由算法帮助数据封包选择下一个目的地。

    可靠性保证数据无损地到达目的地。可靠性是 IP 协议上方的 Host-To-Host 协议保证的,比如 TCP 协议通过应答机制、窗口等保证数据的可靠性。 IP 协议自身不能保证可靠性。比如 IP 协议可能会遇到下面这几个问题:

    • 封包损坏(数据传输过程中被损坏);

    • 丢包(数据发送过程中丢失);

    • 重发(数据被重发,比如中间设备通过 2 个路径传递数据);

    • 乱序(到达目的地时数据和发送数据不一致)。

    但是 IP 协议并不会去处理这些问题,因为网络层只专注解决网络层的问题, 而且不同特性的应用在不同场景下需要解决的问题不一样。对于网络层来说,这里主要有 3 个问题要解决:

    • 延迟

    • 吞吐量

    • 丢包率

    这三个是鱼和熊掌不能兼得,我们后续会讨论。

    另外,IP 协议目前主要有两种架构,一种是 IPv4,是目前应用最广泛的互联网协议;另一种是 IPv6,目前世界各地正在积极地部署 IPv6。

    在这里插入图片描述


    IP 协议的工作原理

    • IP 协议接收 IP 协议上方的 Host-To-Host 协议传来的数据,然后进行拆分,这个能力叫作分片(Fragmentation)
    • 然后 IP 协议为每个片段(Fragment)增加一个 IP 头(Header),组成一个IP 封包(Datagram)
    • 之后,IP 协议调用底层的局域网(数据链路层)传送数据。最后 IP 协议通过寻址和路由能力最终把封包送达目的地

    接下来具体看下完整的过程。

    分片(Fragmentation)

    分片就是把数据切分成片。 IP 协议通过它下层的局域网(链路层)协议传输数据,因此需要适配底层传输网络的传输能力。数据太大通常就不适合底层网络传输,这就需要把大的数据切片。 当然也可能选择不切片,IP 协议提供了一个能力就是把封包标记为不切片,当底层网络看到不切片的封包,又没有能力传输的时候,就会丢弃这个封包。你要注意,在网络环境中往往存在多条路径,一条路径断了,说不定其他路径可以连通。


    增加协议头(IP Header)

    切片完成之后,IP 协议会为每个切片(数据封包 Datagram)增加一个协议头。一个 IPv4 的协议头看上去就是如下图所示的样子:

    在这里插入图片描述
    其中分成 4 个部分。

    • 最重要的是原地址和目标地址。IPv4 的地址是 4 组 8 位的数字,总共是 32 位。

    • Type Of Service 服务的类型,是为了响应不同的用户诉求,用来选择延迟、吞吐量和丢包率之间的关系。

    • IHL(Internet Header Length)用来描述 IP 协议头的大小。所以 IP 协议头的大小是可变的。IHL 只有 4 位,最大值 1111 = 15。最大是 15 个双字0.0(15*4 字节 = 60 字节)。

    • Total Length 定义报文(封包 Datagram)的长度。

    • Identification(报文的 ID),发送方分配,代表顺序。

    • Fragment offset 描述要不要分包(拆分),以及如何拆分。

    • Time To Live 描述封包存活的时间。因此每个 IP 封包发送出去后,就开始销毁倒计时。如果倒计时为 0,就会销毁。比如中间的路由器看到一个 TTL 为 0 的封包,就直接丢弃。

    • Protocol 是描述上层的协议,比如 TCP = 6,UDP = 17。

    • Options 代表可选项。

    • Checksum 用来检验封包的正确性,如果 Checksum 对不上,就需要选择丢弃这个封包。


    “鱼和熊掌”不能兼得——延迟、吞吐量、丢包率

    上面我们看到 IPv4 协议中提供了一个叫作 Type of Service(服务类型)的字段。这个字段是为了在延迟、吞吐量和丢包率三者间选择。

    延迟(latency)

    延迟指的是 1 bit 的数据从网络的一个终端传送到另一个终端需要的时间。这个时间包括在发送端准备发送的时间、排队发送的时间、发送数据的时间、数据传输的时间等。


    吞吐量(Throughput)

    吞吐量指单位时间内可以传输的平均数据量。比如用 bit/s 作为单位,就是 bps。吞吐量和延迟没有联系,比如延迟很高的网络,有可能吞吐量很高。可以类比成水管很大流速很慢,对比水管很细流速很快,这两种情况,最终流量可以是相等的。


    丢包率(Packet loss)

    丢表率指发送出去的封包没有到达目的地的比例。 在最大流速确定的网络中,丢表率会直接影响吞吐量。

    我们的网络有时候需要低延迟,比如玩一款 RTS 游戏或者 Moba 游戏,这种时候延迟非常重要。另外如果把延迟看作一个平均指标,丢包也会影响延迟——一个包丢了,需要重发。而有的应用需要高吞吐量,延迟不是很重要,比如说网盘下载文件。大部分应用期望丢包不能太严重,比如语音电话,少量丢包还能听清,大量丢包就麻烦了,根本听不清对方说什么。严格希望不丢包的应用比较少,只有极特殊的网络控制管理场景,才需要在互联网层要求不丢包。

    当然这三个条件,通常不能同时满足。如果同时追求延迟、吞吐量、丢包率,那么对网络设备的要求就会非常高,说白了就会非常贵

    因此 IP 协议头中的 Type of Service 字段里,有以下 4 种主要的类型可以选择:

    • 低延迟

    • 高吞吐量

    • 低丢包率

    • 低成本


    寻址(Addressing)

    地址想要表达的是一个东西在哪里。寻址要做的就是:给一个地址,然后找到这个东西。IPv4 协议的寻址过程是逐级寻址。

    IPv4 地址

    IPv4 地址是 4 个 8 位(Octet)排列而成,总共可以编址 43 亿个地址。

    比如 103.16.3.1 就是一个合法的 Ipv4 地址。4 组数字用.分开,是为了让人可读,实际上在内存和传输过程中,就是直接用 32 位。

    可以观察一下103.16.3.1的二进制,如下图所示:

    在这里插入图片描述


    寻址过程

    寻址就是如何根据 IP 地址找到设备。因为 IPv4 的世界中,网络是一个树状模型。顶层有多个平行的网络,每个网络有自己的网络号。然后顶层网络下方又有多个子网,子网下方还有子网,最后才是设备。

    在这里插入图片描述

    IP 协议的寻址过程需要逐级找到网络,最后定位设备。下面我们具体分析下这个过程。

    步骤 1:找到顶层网络

    比如103.16.3.1最顶层的网络号可以和255.0.0.0(子网掩码)做位与运算得到,如下所示:

    复制代码

    103.16.3.1 & 255.0.0.0 = 103.0.0.0
    

    因此103.0.0.0就是103.16.3.1所在的顶层网络。255.0.0.0.称作子网掩码。子网掩码的作用就是帮助根据 IP 地址找到对应子网。子网掩码是很多个1接着很多个0,和 IP 地址一起使用。


    步骤 2:找到下一层网络

    接下来要找到下一级网络,就需要用 IP 地址和下一级的子网掩码做位与运算。 比如:

    103.16.3.1 & 255.255.0.0 = 103.16.0.0
    
    

    其中103.16.0.0就是下一级的网络号。


    步骤 3:找到再下一级网络

    接下来使用255.255.255.0子网掩码找到下一级网络是103.16.3.0。


    步骤 4:定位设备

    设备就在子网103.16.3.0中,最终找到的设备号是1。

    当然子网掩码也不一定都是255,比如这个子网掩码255.240.0.0也是可以的。但通常我们把 IPv4 的网络分成这样 4 层。


    路由(Routing)

    在寻址过程中,数据总是存于某个局域网中。如果目的地在局域网中,就可以直接定位到设备了。如果目的地不在局域网中,这个时候,就需再去往其他网络。

    由于网络和网络间是网关在连接,因此如果目的地 IP 不在局域网中,就需要为 IP 封包选择通往下一个网络的路径,其实就是选择其中一个网关。你可能会问:网关有多个吗?如果一个网络和多个网络接壤,那自然需要多个网关了。下图中,路由器在选择 IP 封包下一个应该是去往哪个 Gateway?

    在这里插入图片描述
    假如,我们要为 IP 地址 14.215.177.38 寻址,当前路由器所在的网络的编号是16.0.0.0。那么我们就需要知道去往 14.0.0.0 网络的 Gateway IP 地址。

    如果你在当前网络中用route查看路由表,可能可以看到一条下面这样的记录。

    Destination14.0.0.0
    
    Gateway16.12.1.100
    
    Mask255.0.0.0
    
    Iface16.12.1.1
    

    这条记录就说明如果你要去往 14.0.0.0 网络,IP 地址 14.215.177.38 先要和 255.0.0.0 进行位运算,然后再查表,看到 14.0.0.0,得知去往 Gateway 的网卡(IFace)是 16.12.1.1。

    当封包去向下一个节点后,会进入新的路由节点,然后会继续上述路由过程,直到最终定位到设备。


    总结

    这里我们梳理学习了 IP 协议和 IP 协议的工作原理。

    • 首先 IP 协议会进行分片,将上游数据拆成一个个的封包(Datagram),
    • 然后为封包增加 IP 头部。封包发送出去后,就开始了寻址过程。寻址就是找到 IP 地址对应的设备。在局域网内,如果找不到设备,就需要路由。
    • 路由就是找到数据应该往哪里发送。最后通过层层路由定位到具体的设备。

    QA

    路由和寻址的区别是什么?

    寻址(Addressing)就是通过地址找设备。和现实生活中的寻址是一样的,比如根据地址找到一个公寓。在 IPv4 协议中,寻址找到的是一个设备所在的位置。

    路由(Routing)本质是路径的选择。就好像知道地址,但是到了每个十字路口,还需要选择具体的路径。

    所以,要做路由,就必须能够理解地址,也就是需要借助寻址的能力。要通过寻址找到最终的设备,又要借助路由在每个节点选择数据传输的线路。因此,路由和寻址,是相辅相成的关系。


    127.0.0.1, localhost, 0.0.0.0 有什么不同

    • 127.0.0.1是本地回环地址(loopback),发送到 loopback 的数据会被转发到本地应用。

    • localhost 指代的是本地计算机,用于访问绑定在 loopback 上的服务。localhost 是一个主机名,不仅仅可以指向 IPv4 的本地回环地址,也可以指向 IPv6 的本地回环地址 [::1]。

    • 0.0.0.0是一个特殊目的 IP 地址,称作不可路由 IP 地址,它的用途会被特殊规定。通常情况下,当我们把一个服务绑定到0.0.0.0,相当于把服务绑定到任意的 IP 地址。比如一台服务器上有多个网卡,不同网卡连接不同的网络,如果服务绑定到 0.0.0.0 就可以保证服务在多个 IP 地址上都可以用。

    在这里插入图片描述

    展开全文
  • IPv6 寻址方式简介

    2021-11-28 20:37:25
    在计算机网络中,寻址模式是指在网络上托管地址的机制。IPv6 提供了多种类型的模式,可以通过这些模式对单个主机进行寻址。也可以同时对多个主机进行寻址或者寻址最近距离的主机。 单播寻址 在单播寻址方式中,IPv6 ...

    在计算机网络中,寻址模式是指在网络上托管地址的机制。IPv6 提供了多种类型的模式,可以通过这些模式对单个主机进行寻址。也可以同时对多个主机进行寻址或者寻址最近距离的主机。

    单播寻址

    在单播寻址方式中,IPv6 接口(主机)在一个网段中被唯一标识。IPv6 数据包包含源 IP 地址和目标 IP 地址。主机接口配备了一个在该网段中唯一的 IP 地址。当网络交换机或路由器接收到一个单播 IP 数据包,目的地是单个主机时,它会发送一个连接到该特定主机的输出接口。

    IPv6-单播原理图

    组播寻址

    IPv6 组播方式与 IPv4 相同。发往多个主机的数据包在一个特殊的多播地址上发送。所有对该组播信息感兴趣的主机都需要先加入该组播组。加入该组的所有接口都会收到组播数据包并对其进行处理,而其他对组播数据包不感兴趣的主机则忽略该组播信息。

    IPv6-组播原理图

    任播寻址

    IPv6 引入了一种新的寻址方式,称为任播寻址。在这种寻址模式下,多个接口(主机)被分配了相同的任播 IP 地址。当主机希望与配备任播 IP 地址的主机通信时,它会发送单播消息。在复杂的路由机制的帮助下,单播消息被传递到在路由成本方面最接近发送方的主机。

    IPv6-任播原理图

    让我们以位于各大洲的 Google.com Web 服务器为例。假设所有 Web 服务器都分配了一个 IPv6 任播 IP 地址。现在,当来自欧洲的用户想要访问 Google.com 时,DNS 指向物理上位于欧洲本身的服务器。如果来自亚洲的用户尝试访问 Google.com,则 DNS 将指向物理上位于亚洲的 Web 服务器。Nearest 或 Closest 术语是用来表示路由的成本。

    在上图中,当客户端计算机尝试访问服务器时,请求被转发到路由成本最低的服务器。

    更多关于IPv6的内容可以参考 迹忆客 IPV6教程

    扩展阅读

    IPV4 教程

    展开全文
  • 要访问的数据是一个单独的位,可通过以下4种方式指定位数据:
  • 利用P2P技术中基于分布式哈希算法的的寻址机制可以解决MANET中多媒体业务的的节点定位问题。但是由于传统的分布式哈希算法存在其逻辑拓扑与物理拓扑没有相应的匹配机制,MANET中节点的移动性的特点等,导致其无法...
  • 寻址范围、按字寻址、按字节寻址

    千次阅读 2021-06-12 13:03:09
    寻址范围,又叫寻址空间,一般指的是CPU对于内存寻址的能力。通俗地说,就是能最多用到多少内存的一个问题。 地址总线为N位(N通常都是8的整数倍;也说N根数据总线)的CPU寻址范围是2的N次方字节,即2^N(B)。寻址...
  • 不同存储区的寻址-跟我学swf,不同存储区的寻址-跟我学。
  • IPv4 寻址方式简介

    千次阅读 2021-11-27 12:01:10
    IPv4 支持三种不同类型的寻址模式。单播寻址方式、广播寻址方式和组播寻址方式。本章节我们来介绍这些寻址方式。 单播寻址方式 在这种模式下,数据只发送到一个目标主机。Destination Address 字段包含目标主机的 32...
  • 一、定位内存中的修改点、 1、基址寻址法、 2、搜索定位法、
  • 按字寻址与按字节寻址

    万次阅读 多人点赞 2019-04-23 17:24:07
    寻址空间与寻址范围 寻址范围只是一个数字范围,不带有单位,而寻址范围的大小指的是寻址空间的大小,寻址空间指能够寻址的最大容 量, 单位一般用MB、B来表示。 《计算机组成原理》——唐朔飞 P73 对于24位地址...
  • 关于按字节寻址和按字寻址的理解

    千次阅读 多人点赞 2019-12-05 13:14:02
    按字节寻址:每一个字节的每一位都可以作为地址编号的一部分。 按字寻址:每一个字含有多个字节,需要区分每个字节的位置,这就损失了一定的位数,余下的都可用于地址编号。(书P73“主存中存储单元地址的分配”的第...
  • 基址寻址和变址寻址

    千次阅读 2021-10-20 20:51:55
    基址寻址能实现程序的“动态定位”,由操作系统或管理程序决定其内容,基址就是程序代码的起始地址,因此每当程序代码地址变动,只需要把基址寄存器中的地址改成程序的起始地址即可,而不需要修改指令中的地址码。...
  • 链路层寻址

    千次阅读 2021-10-27 22:31:34
    IP地址与MAC地址的映射通过ARP表来进行维护,即源主机和目的主机的IP地址各对应一个MAC地址,数据报由源主机网络层至目的主机网络层的过程中需要经过链路层,而链路层寻址用的是MAC地址并非IP地址,此时需要根据这...
  • 原标题:单片机学习:51单片机寻址方式详解 51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel 8031单片机,后来随着Flash rom 技术的发展,8031单片机取得了长足的发展,成为了...
  • 闲谈寻址-两种寻址方法

    万次阅读 2017-11-18 14:46:17
      类比回计算机网络专业领域,定位普通居民犹如IP寻址定位军人则好似内存定位。 后记 我常想,写一篇文章要不要非得画图。要不要呢?   自幼喜欢日本漫画和日本影视剧,发现日本人对于一个问题...
  • 汇编语言基础:寄存器和寻址方式

    千次阅读 2022-06-06 08:31:45
    寄存器分类AX、BX、CX、DX 一般用来存放数据,所以被称为数据...SI和DI功能和BX相同,可以用于间接寻址。主要用于存放存储单元在段内的偏移量。但是SI、DI不可分割成8位寄存器。在16为构架中,16位的指针只能访问64k
  • mips的绝对寻址和相对寻址

    千次阅读 2019-09-04 12:46:59
    本文针对龙芯处理器介绍mips的两种重定位类型,绝对寻址和相对寻址。 首先你要知道MIPS中跳转指令有两种bal和jal。bal指令格式如下: jal指令格式如下: 两者的区别如下表: 指令 指令格式 寻址...
  • 数据寻址

    2021-04-25 22:11:12
    数据寻址 操作数类型 地址:无符号数 数字:定点数、浮点数、十进制数 字符:ASCII码 逻辑数:逻辑运算 数据寻址 指令的格式:操作码(OP)+寻址特征+形式地址(A)——一地址指令 寻址方式位:寻址方法的编号,...
  • 直接寻址页变量

    2021-05-21 03:35:05
    直接寻址页变量:RAM存储器空间的前256字节($0000~$OOFF)被称为直接寻址页(direct page)、基地址页(base page)或第零页(zero page)。对于M68HC08系列微控制器,直接寻址页的开始部分为I/O与控制寄存器,寄存器后面才是...
  • 立即寻址,直接寻址,间接寻址

    万次阅读 多人点赞 2017-04-10 23:17:40
    立即寻址就是指令当中自带数据,直接读取,最快; 直接寻址就是指令中存放的是地址,直接解析这个地址; 间接寻址就只指令中存放的是地址的地址,或者是存放地址的寄存器,最慢。 ...
  • 寻址方式啊

    2021-07-19 20:02:22
    7.3 寻址方式 寻址方式是指:确定本条指令的操作数地址或者是下一条要执行指令的指令地址。所以寻址方式就是如何找到操作数地址和指令地址。 一,指令寻址主要有两种方式 顺序寻址 指令执行完以后顺序的去取下一条...
  • 关于按字寻址和按字节寻址的理解

    千次阅读 2020-05-11 15:56:01
    关于存储器按字节寻址和按字寻址的理解 近日在学习MOOC上学习哈工大刘宏伟老师的“计算机系统组成原理”课程,在4.1节提到主存的时候简单地提到一下关于按字节寻址和按字寻址寻址空间问题 个人对按字、按字节寻址...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 48,571
精华内容 19,428
热门标签
关键字:

寻址网定位