汇编语言中ebx和bx的区别是什么?

作者&投稿:勤琬 (若有异议请与网页底部的电邮联系)
汇编(BX)与 [BX]有什么差别?~

BX指bx所存放的是直接使用的值
[BX]指用bx中存放的地址找到对应的值
,这个值是间接使用的

AX称为累加器(Accumulator),是CPU中使用最多,功能最强,执行效率的寄存器.
BX称为基地址寄存器(Base Register).
CX称为计数寄存器(Count Register).
DX称为数据寄存器(Data Register).
没有本质上的区别,都是通用16位寄存器.
相应的通用32位寄存器是EAX,EBX,ECX,EDX.
至于怎么用库文件里的指令都有定义,只需了解指令格式即可.

ebx寄存器是32位
而且比
是BX的两倍

在80386以上的指令集才可使用EBX

EBX是一个32-bit寄存器。同时,它的低16-bit又可以通过BX这

个名字来访问;BX又被分为高、低8bit两部分,
分别由BH和BL来表示。

80386是Intel推出的第一款IA-32系列处理器,所有的寄存器都被扩充为32位。为了

能够兼容以前的16位应用程序,80386不能将这些寄存器依旧命名为AX、BX,并且简单地将他们扩充为32位

ebx是32位,是bx的2倍.8086汇编中只有bx
在32位汇编中有ebx


相等值的常量和变量为什么放在表达式中结果不同?
4: { int a=2, b=3;00401540 55 push ebp 00401541 8B EC mov ebp,esp 00401543 83 EC 48 sub esp,48h 00401546 53 push ebx 00401547 56 push esi 00401548 57 push edi 00401549 8D 7D B8 lea edi,[...

请问汇编 中xor al,11111111b mov cl,0ffh 是什么意思。
xor al ,11111111b ;al的值与11111111异或的结果保存到almov cl,0ffh ;把0ffh保存到cleax(32位寄存器)是ax(16位寄存器)的拓展 而al ah分辨是ax的低八位和高八位 类推到ebx,ecx,edx同理。xor的意思,举例来说 1111'1111b 与 1111'1110b的结果为0000'0001 ...

代码翻译 将下面的代码翻译成ARM汇编语言的代码
cmp a,b jb loop1:add a,1 jmp loop2 loop1:add b,1 loop2:mov ecx,10 mov ebx,offset b add ebx,ecx xor eax,eax add eax,[ebx]add eax,c mov edx,offset a add edx,ecx mov [edx],eax loop loop2 mov eax,a sub eax,b push eax call Abs ...

如何编写计算y=x*x 6x 9的程序(汇编语言)
fld b ;stack:stack: b,1\/(2*a)fld disc ;stack: disc, b, 1\/(2*a)fsubrp st1 ;stack: disc-b, 1\/(2*a)fmulp st1 ;stack: (-b + disc)\/(2*a) 即 (-b + sqrt(b*b - 4*a*c)) \/ (2*a)mov ebx,root1 fstp qword [ebx] ;stors in *root1 fld b ;stack:b ...

c语言(exp) ? a++ : b--其中(exp)是啥意思
()?():()就是一运算符 ()里分别是三个表达式 运行第一个表达式,如果其结果为真,运行第二个表达式,为假则运行第三个表达式!!这个题目里,就是先判断(exp)表达式的真假。真,则运行a++;假则运行b--

两个汇编的小问题,请帮一下忙
xor ebx, ebx ;xor是异或,将ebx和ebx做异或运算,即将ebx寄存器清零;mov bl, al ;al寄存器的值传递给bl,这里al的值为输入的数字;mov ax, tab[ebx*2] ;将tab数组里的对应立方值传递给ax寄存器;mov XXX, ax ;XXX变量作为输出;exit: mov ah, 4ch int ...

在A地址有100个数据,把它传到B地址的L处,用汇编语言编程
不清楚你说的是什么意思,B地址的L处到底是什么意思?两种猜测 1>在你所谓的"B的L处"(也就是一个新地址)处访问A的100个字节 如果是这种情况,你可以将100后的字节数据先保存到其他位置,然后将数据写00,操作完成后再将原始数据改回 2>在"B的L处"(也就是一个新地址),写入100个字节 xor...

关于特征码识别计算机病毒方法
00400271 66:8973 02 MOV WORD PTR DS:[EBX+2],SI00400275 5E POP ESI00400276 CC INT3 ; 执行INT 3指令,进入CIH自身的INT 3入口程序,获得权限(Ring 0级),00400277 56 PUSH ESI00400278 8BF0 MOV ESI,EAX0040027A 8B48 FC MOV ECX,DWORD PTR DS:[EAX-4]0040027D F3:A4 REP MOVS BYTE PTR ES:[...

怎么用vs2008编写汇编
format[] = "%s %s\\n";char hello[] = "hello";char world[] = "world";__asm { lea esi,world;push esi;lea esi,hello;push esi;lea esi,format;push esi;call dword ptr printf;pop ebx;pop ebx;pop ebx;} int m = cmp(10000,2000);printf("\\n%d\\n",m);return 0;} ...

求ax2+bx-c的表达式的值,给出解题步骤和机器语言程序
步骤如下:给定a、b、c和x的值;将a、b、c和x的值带入表达式中计算;得到表达式的值。机器语言程序如下(以x86汇编语言为例):assembly ; 假设a、b、c和x分别存储在寄存器eax、ebx、ecx和edx中 ; 计算ax^2 + bx - c的值,并将结果存储在寄存器eax中 ; 计算ax^2并存储在寄存器eax中 imul...

图木自治县市18783796782: 汇编语言中ebx和bx的区别是什么? -
市歪鹅掌: ebx是32位,是bx的2倍.8086汇编中只有bx 在32位汇编中有ebx

图木自治县市18783796782: 汇编语言中EBX ECX EDX EAX这些有什么具体的差别嘛都怎么用,还有ESP -
市歪鹅掌: 去看看王爽汇编,你就一目了然了,基本你说的都是一样,只是没E开头 的是用在16位系统,E开头的在32位系统, R开头的用在64系统.用起来是一样的,只是长度不同.

图木自治县市18783796782: 汇编语言中语句 xorebx,ebx 什么意思
市歪鹅掌: 这些32位CPU,32位寄存器名. 注册为正在运行的CPU的内部临时数据存储单元.PC的16位CPU 8086,8088,注册名称AX(累加器),计数寄存器基址寄存器(BX)CX,DX(数据寄存器),SP(堆栈指针),BP(基址指针),SI(源变址寄存器),DI(目的变址寄存器),IP(指令指针),等等...... 除了能看到这些寄存器的用途以外的名称,该部分的寄存器可被用作一个共同的通用数据存储的.为了清楚明白,对每个寄存器的特定功能相关联的具体说明,在与各种.386以上的32位CPU,这些寄存器扩展到32,这个名字是在原来的16个字母“E”的名称为EAX,EBX,...... .. ...

图木自治县市18783796782: 汇编语言的AX,BX,CX,DX,分别表示什么 -
市歪鹅掌: AX寄存器称为累加器(Accumulator),使用时主要用于存放数据,如存放算术、逻辑运算中的操作数或结果.也可临时时用于存放地址. BX寄存器称为基址寄存器(BaseRegister),常用来存放访问存储器时的地址. CX寄存器称为计数寄存...

图木自治县市18783796782: 汇编语言中,中括号“[]”的作用.例如:mov edx,[ebx]与mov [edx],ebx有什么区别? -
市歪鹅掌:[答案] []相当于@.就是指向内存. 现在 edx=10; mov edx,[edx] 之后edx

图木自治县市18783796782: 请问 在汇编中的两条语句 mov ax,es:bx 与 mov ax,es:[bx]中的 bx 分别代表什么意思? -
市歪鹅掌: 这两句中的bx意思相同,都是将bx作为间址寄存器的,这两句的结果都是将偏移地址为bx中内容的连续的两个内存单元中的内容作为一个字传入ax中!! 我已经验正了!!

图木自治县市18783796782: 汇编语言的 -
市歪鹅掌:[选项] A. X, B. X, C. X, D. X,分别表示什么

图木自治县市18783796782: 有关汇编语言指令的问题
市歪鹅掌: MOV AL,[EBX] 将EBX为地址中的内容放到AL中,其中EBX为32位元暂存器,只使用低16位 MOV EAX,table[BX] 应该是talbe:[BX]吧,就是把段地址为table,偏移地址为BX的内容放到EAX中,同上,只使用低16位 MOV AX,[EBX+ESI] 将偏移地址EBX与变址ESI相加,这个和为地址的内容放入AX中 MOV [EDI],[ESI] 将偏移地址为ESI的地址的内容覆盖EDI为地址为地址的内容(与DI和SI不同在于都是32位的寄存器)

图木自治县市18783796782: 有关汇编语言的问题,急求,在线等 -
市歪鹅掌: 1.mov eax,ebx这句是将寄存器ebx中的内容赋值给eaxeax=ebx2.mov eax,[ebx]是指以ebx为偏移地址,DS为数据段求出的物理地址取出该物理地址内存中双字的内容赋值给eax3.mov eax,1234...

图木自治县市18783796782: 汇编语言mov ax, [bx]是什么意思? -
市歪鹅掌: 这两条指令是相同的,都是直接寻址:mov dx,num 按照变量名称,取来它的内容;mov dx,[num] 按照变量地址,取来它的内容.如果想要用间接寻址,则:MOV BX, OFFSET NUM 取NUM的偏移地址;MOV DX, [BX] 间接寻址,取来NUM的内容.另外:MOV BX, OFFSET NUM 取NUM的偏移地址;和LEA BX, NUM又是完全相同的,都是传送NUM的偏移地址到BX.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网