
汇编语言中DS初始化为MY_DATA时为什么要先把MY_DATA放到AX里?
MY_CODESEGMENTASSUMECS:MY_CODE,DS:MY_DATASTART:MOVAX,MY_DATA;DS初始化为MY_DATAMOVDS,AX………...
MY_CODE SEGMENT
ASSUME CS:MY_CODE,DS:MY_DATA
START: MOV AX,MY_DATA ;DS初始化为MY_DATA
MOV DS,AX
……………………
其中DS初始化为MY_DATA时,为什么不写成直接写成MOV DS,MY_DATA
MOV指令规定源操作数和目的操作数不能同时为内存单元,也不能同时为立即数。CS和IP不能作目的操作数。但是没说不能向DS传送啊。为什么要这样写? 展开
ASSUME CS:MY_CODE,DS:MY_DATA
START: MOV AX,MY_DATA ;DS初始化为MY_DATA
MOV DS,AX
……………………
其中DS初始化为MY_DATA时,为什么不写成直接写成MOV DS,MY_DATA
MOV指令规定源操作数和目的操作数不能同时为内存单元,也不能同时为立即数。CS和IP不能作目的操作数。但是没说不能向DS传送啊。为什么要这样写? 展开
1个回答
展开全部
这是8086汇编中mov指令的用法,希望对你有用
mov 寄存器,数据
mov 寄存器,寄存器
mov 寄存器,内存单元
mov 内存单元,寄存器
mov 段寄存器,寄存器
mov 寄存器,段寄存器
mov 段寄存器,内存单元
mov 内存单元,段寄存器
mov byte(word、dword) ptr 内存单元,数据
注:在8086CPU中无法直接对段寄存器赋值,也无法直接进行内存单元之间的赋值,如要向段寄存器写入值可以使用寄存器转存
mov 寄存器,数据
mov 寄存器,寄存器
mov 寄存器,内存单元
mov 内存单元,寄存器
mov 段寄存器,寄存器
mov 寄存器,段寄存器
mov 段寄存器,内存单元
mov 内存单元,段寄存器
mov byte(word、dword) ptr 内存单元,数据
注:在8086CPU中无法直接对段寄存器赋值,也无法直接进行内存单元之间的赋值,如要向段寄存器写入值可以使用寄存器转存
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?

2025-08-05 广告
Paykka 适合有全球贸易需求的企业或个人使用,特别是那些涉及东南亚地区交易、需要高效收款和结算的用户,以及有小额支付需求的商家。它能满足这些用户在跨境交易中的各种支付需求。...
点击进入详情页
本回答由paykka提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询