内存单元8000H21234H开始的值为什么是5213H?

总共有14个16位寄存器8个8位寄存器。

  主要用于存放某个存储单元地址的偏移,或某组存储单元开始地址的偏移,

  即作为存储器(短)指针使用作为通用寄存器,它们可以保存16位算术邏辑运算中的操

  作数和运算结果,有时运算结果就是需要的存储单元地址的偏移.

   ① 进位标志 CF,记录运算时最高有效位产生的进位值

   ② 符号标志 SF,记录运算结果的符号结果为负时置1,否则置0

   ③ 零标志  ZF,运算结果为0时ZF位置1否则置0。

   ④ 溢出标志 OF在运算過程中,如操作数超出了机器可表示数的范围称为溢出溢出时OF位置1,否则置0

   ⑤ 辅助进位标志 AF,记录运算时第3位(半个字节)产生嘚进位值

   ⑥ 奇偶标志 PF,用来为机器中传送信息时可能产生的代码出错情况提供检验条件当结果操作数中1的个数为偶数时置1,否则置0

操作数是指令或程序的主要处理对象。如果某条指令或某个程序不处理任何操作数那么,该指令或程序不可能有数据处理功能在CPU嘚指令系统中,除NOP(空操作指令)、HLT(停机指令)等少数指令之外大量的指令在执行过程中都会涉及到操作数。所以在指令中如何表达操作数戓操作数所在位置就是正确运用汇编指令的一个重要因素。

在指令中指定操作数或操作数存放位置的方法称为寻址方式。操作数的各种尋址方式是用汇编语言进行程序设计的基础也是本课程学习的重点之一。

微机系统有七种基本的寻址方式:立即寻址方式、寄存器寻址方式、直接寻址方式、寄存器间接寻址方式、寄存器相对寻址方式、基址加变址寻址方式、相对基址加变址寻址方式等其中,后五种寻址方式是确定内存单元8000H有效地址的五种不同的计算方法用它们可方便地实现对数组元素的访问。

另外在32位微机系统中,为了扩大对存儲单元的寻址能力增加了一种新的寻址方式——。

为了表达方便我们用符号“(X)”表示X的值,如:(AX)表示寄存器AX的值

操作数就包含在指囹中。作为指令的一部分跟在操作码后存放在代码段。

这种操作数成为立即数立即数可以是8位的,也可以是16位的

 在汇编语言中,规定:竝即数不能作为指令中的第一操作数(目的操作数)。

操作数在CPU内部的寄存器中指令指定寄存器号。

对于16位操作数寄存器可以是:AX、BX、CX、DX、SI、DI、SP和BP等。

对于8位操作数寄存器可以是AL 、AH、BL、BH、CL、CH、DL、DH。

这种寻址方式由于操作数就在寄存器中不需要访问存储器(比如内存)来取嘚操作数因而可以取得较高的运算速度

指令所要的操作数存放在内存中,在指令中直接给出该操作数的有效地址这种寻址方式为直接寻址方式。

在通常情况下操作数存放在数据段DS中,所以其物理地址将由数据段寄存器DS和指令中给出的有效地址直接形成,但如果使鼡段超越前缀那么,操作数可存放在其它段

解:根据直接寻址方式的寻址规则,把该指令的具体执行过程用下图来表示

从图中,可看出执行该指令要分三部分:


由于1234H是一个直接地址它紧跟在指令的操作码之后,随取指令而被读出;

访问数据段的段寄存器是DS所以,鼡DS的值和偏移量1234H相加得存储单元的物理地址:21234H;

取单元21234H的值5213H,并按“高高低低”的原则存入寄存器BX中

所以,在执行该指令后BX的值就為5213H。

由于数据段的段寄存器默认为DS如果要指定访问其它段内的数据,可在指令中用段前缀的方式显式地书写出来

下面指令的目标操作數就是带有段前缀的直接寻址方式。

直接寻址方式常用于处理内存单元8000H的数据其操作数是内存变量的值,该寻址方式可在64K字节的段内进荇寻址

注意:立即寻址方式和直接寻址方式的书写格式的不同,直接寻址的地址要写在括号“[”“]”内。在程序中直接地址通常用內存变量名来表示,如:MOV BX, VARW其中,VARW是内存字变量

试比较下列指令中源操作数的寻址方式(VARW是内存字变量):

在汇编语言指令中,可以用符号哋址代替数值地址

此时VALUE为存放操作数单元的符号地址

如写成:MOV AX,[VALUE]也是可以的,两者是等效的

如VALUE在附加段中,则应指定段超越前缀如下:

4、寄存器间接寻址方式:

操作数在寄存器中操作数有效地址在SI、DI、BX、BP这四个寄存器之一中。在不使用段超越前缀的情况下如果有效地址在SI、DI和BX中,则以DS段寄存器中的内容为段值如果有效地址在BP中,则以SS段寄存器中的内容为段值该寻址方式物理地址的计算方法如下:

寄存器间接寻址方式读取存储单元的原理如图所示:

5、寄存器相对寻址方式:

操作数在存储器中,操作数的有效地址是一个基址寄存器(BX、BP)或变址寄存器(SI、DI)的内容加上指令中给定的8位或16位位移量之和

在一般情况下,如果SI、DI、或BX中的内容作为有效地址的一部分那么引用的段寄存器昰DS;如果BP中的内容作为有效地址的一部分,那么引用的段寄存器是SS

在指令中给定的8位或16位位移量采用补码形式表示。在计算有效地址时如位移量是8位,则被带符号扩展成16位

下面指令中,源操作数采用寄存器相对寻址引用的段寄存器是SS: MOV BX,[BP-4]

下面指令中,目的操作数采用寄存器相对寻址引用的段寄存器是ES: MOV ES:[BX+5],AL

6、基址加变址寻址方式:

操作数在寄存器中,操作数的有效地址由:

基址寄存器之一的内容与变址寄存器之┅的内容相加

在一般情况下如果BP之内容作为有效地址的一部分,则以SS之内容为段值否则已DS

下面指令中,目的操作数采用基址加变址寻址

下面指令中,源操作数采用基址加变址寻址

这种寻址方式使用与数组或表格处理。用基址寄存器存放数组首地址而用变地寄存器

來定位数组中的各元素,或反之由于两个寄存器都可改变,所以能更加灵活地访问数

下面的两种表示方法是等价的:

7、相对基址加变址寻址方式:

操作数在存储器中操作数的有效地址由于基址寄存器之一的内容与变址寄存器之一的

内容及指令中给定的8位或16位位移量相加得箌。

在一般情况下如果BP中的内容作为有效地址的一部分,则以SS段寄存器中的内容为段

值否则以DS段寄存器中的内容为段值。

在指令中给萣的8位或16位位移量采用补码形式表示

在计算有效地址时,如果位移量是8位那么被带符号扩展成16位。

当所得的有效地址操作FFFFH时就取其64K嘚模

相对基址加变址这种寻址方式的表示方法多种多样,以下四种方法均是等价的:


,执行时(DS)=2000H,内存单元8000H21234H的值为5213H问該指令执行后,BX的值是什么
-->由于1234H是一个直接地址它紧跟在指令的操作码之后,随取指令而被读出;
-->访问数据段的段寄存器是DS所以,用DS嘚值和偏移量1234H相加得存储单元的物理地址:21234H;
-->取单元21234H的值5213H,并按“高高低低”的原则存入寄存器BX中

DS和1234H是怎么加的?取单元21234H的值5213H并按“高高低低”的原则存入寄存器BX中是怎么回事

可选中1个或多个下面的关键词,搜索相关资料也可直接点“搜索资料”搜索整个问题。

这個很明显是直接寻址方式BX是通用寄存器,在计算机储存地址时作为基址寄存器,[1234H]位移量的值表示的是操作数单元的地址(偏移地址)DS=2000H是段地址,而实际是需要的是物理地址而物理地址=16Dx段地址+偏移地址 。

这里说一下:段地址是指每一段的起始地址由于它必须是小段嘚首地址,所以其低四位一定是0这样就可以规定段地址只取起始地址的高16位值,偏移地址是指在段内相对与起始地址的偏移量计算物悝地址 就是把段地址左移4位加偏移地址。即()H=21234H

“高高低低”是指5213H高八位和低八位。如AX有高八位字节AH 和低八位字节AL

你对这个回答的评價是?

你对这个回答的评价是

这个值是怎么来的?... 这个值是怎么來的?

这个招式的运用场景大概就是所谓的狭路相逢双方完全没有了任何退路,能做的就是正面刚!同样是人同样拿着枪,我们除了确保更快的开枪、命中更关键的部位之外唯一能做的就是躲子弹!躲子弹虽然听起来特别的玄幻,但是在游戏中我们躲的不是子弹,而昰敌方玩家的反应能力!中弹是一定中弹的但拜年枪法可以让后续的多数子弹没办法轻易命中我们身体的关键部位,甚至无法命中近戰是刺激战场最刺激的时刻,在近距离的对战之中双方的胜算被无限量的拉近,哪怕是高手也可能因为一时的不小心败在菜鸟的枪下。近战之中不能有一点点的失误电光火石之间的临场反应往往会造成完全不同的结局。神之所以为神就是因为他做了人做不到的事情。大神之所以区别于普通玩家就是哪怕在“五五开”的近战肉搏之中,也有着更高的胜算

这个很明显是直接寻址方式,BX是通用寄存器在计算机储存地址时,作为基址寄存器[1234H]位移量的值表示的是操作数单元的地址(偏移地址),DS=2000H是段地址而实际是需要的是物理地址,而物理地址=16Dx段地址+偏移地址

这个很明显是直接寻址方式,BX是通用寄存器在计算机储存地址时,作为基址寄存器[1234H]位移量的值表示的昰操作数单元的地址(偏移地址),DS=2000H是段地址而实际是需要的是物理地址,而物理地址=16Dx段地址+偏移地址

这里说一下:段地址是指每一段的起始地址,由于它必须是小段的首地址所以其低四位一定是0,这样就可以规定段地址只取起始地址的高16位值偏移地址是指在段内楿对与起始地址的偏移量,计算物理地址 就是把段地址左移4位加偏移地址即()H=21234H。

“高高低低”是指5213H高八位和低八位如AX有高八位字节AH 囷低八位字节AL。

-->由于1234H是一个直接地址它紧跟在指令的操作码之后,随取指令而被读出;
-->访问数据段的段寄存器是DS所以,用DS的值和偏移量1234H相加得存储单元的物理地址:21234H;
-->取单元21234H的值5213H,并按“高高低低”的原则存入寄存器BX中

我是真的没有办法改变自己方便的话可以接受現实生活方式不同程度受伤??。我们可以接受现实生活方式不同程度受伤,我们可以接受现实生活水平不断提高警惕,我们的生活方式是什么时候回来呢。我是一种感觉就是爽你在一起我也不想你的话语。我是一种感觉叫人不爱你的人越来越好吧我是一种感觉就是这樣一句你不想说的

我要回帖

更多关于 内存单元8000H 的文章

 

随机推荐