汇编语言错误 mov ax,es:[bx]
在windows下,开始--》运行--》debug回车。-amovax,es:[bx];提示^Errormovax,ds:[bx];提示^Errormovax,[bx];...
在windows下,开始--》运行--》debug回车。
-a
mov ax,es:[bx]; 提示 ^Error
mov ax,ds:[bx]; 提示 ^Error
mov ax, [bx]; 正常
以上语句中,第二mov和第三个mov应该是一样的啊,为什么加上段超越前缀就报错呢?
"Win32是flat模式啊,没事你修改段寄存器干嘛 "
做实验啊,实验指导书上要求的.....
你的意思是在dos下就没问题喽?? 展开
-a
mov ax,es:[bx]; 提示 ^Error
mov ax,ds:[bx]; 提示 ^Error
mov ax, [bx]; 正常
以上语句中,第二mov和第三个mov应该是一样的啊,为什么加上段超越前缀就报错呢?
"Win32是flat模式啊,没事你修改段寄存器干嘛 "
做实验啊,实验指导书上要求的.....
你的意思是在dos下就没问题喽?? 展开
展开全部
用debug时默认数据的段地址存放在DS里枝搏的,
mov ax,es:[bx]
mov ax,ds:[bx]
如果用MASM可以通过编译,没有问题。但在debug里这种颂樱语法是错误的,mov ax, [bx]可以,实际上就相当于在MASM里mov ax,ds:[bx]语句。如果要换个数据段用ES存储段地址可以之前写“ES:”,debug就会默认ES的值作为数据段地址。
关于debug和MASM的区别建议看看王爽编著的《汇编语言》,里面有写到,野搭丛而且很详细。
mov ax,es:[bx]
mov ax,ds:[bx]
如果用MASM可以通过编译,没有问题。但在debug里这种颂樱语法是错误的,mov ax, [bx]可以,实际上就相当于在MASM里mov ax,ds:[bx]语句。如果要换个数据段用ES存储段地址可以之前写“ES:”,debug就会默认ES的值作为数据段地址。
关于debug和MASM的区别建议看看王爽编著的《汇编语言》,里面有写到,野搭丛而且很详细。
意法半导体(中国)投资有限公司
2023-06-12 广告
2023-06-12 广告
单片机,即单片微控制器,也称为单片微型计算机,是将中央处理器(CPU)、存储器(ROM,RAM)、输入/输出接口和其他功能部件集成在一块 在一个小块的集成电路上,从而实现对整个电路或系统的数字式控制。单片机不是完成某一个逻辑功能的芯片,而是...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
展开全部
在DEBUG中,段超越前缀要作拦笑为单独一行简埋含输入。如,液启
-a
0AF1:0100 es:
0AF1:0101 mov ax,[bx]
0AF1:0103 ds:
0AF1:0104 mov ax,[bx]
0AF1:0106 mov ax,[bx]
0AF1:0108
-q
-a
0AF1:0100 es:
0AF1:0101 mov ax,[bx]
0AF1:0103 ds:
0AF1:0104 mov ax,[bx]
0AF1:0106 mov ax,[bx]
0AF1:0108
-q
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2009-11-07
展开全部
debug本身和debug调试的程序姿余都不是Win32程序,需要用到段
就像二楼悔册顷说的如果段是DS的话不要加段前缀
如果不是DS的话要在需要改变段的碧陆那条指令前加ES,CS,SS等
-a
0B4A:0100 ES:
0B4A:0101 mov ax,[bx]
0B4A:0103
-u
0B4A:0100 26 ES:
0B4A:0101 8B07 MOV AX,[BX]
就像二楼悔册顷说的如果段是DS的话不要加段前缀
如果不是DS的话要在需要改变段的碧陆那条指令前加ES,CS,SS等
-a
0B4A:0100 ES:
0B4A:0101 mov ax,[bx]
0B4A:0103
-u
0B4A:0100 26 ES:
0B4A:0101 8B07 MOV AX,[BX]
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
有如握键下段仿巧代码:
mov ax,ds:[bx]
mov ax,es:[bx]
编译后:
用debug 查看(如下)大手:
13EE:0000 8B07 MOV AX,[BX]
13EE:0002 26 ES:
13EE:0003 8B07 MOV AX,[BX]
mov ax,ds:[bx]
mov ax,es:[bx]
编译后:
用debug 查看(如下)大手:
13EE:0000 8B07 MOV AX,[BX]
13EE:0002 26 ES:
13EE:0003 8B07 MOV AX,[BX]
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Win32是flat模式啊,没事你修改段寄存器干嘛
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询