首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

程序的基本结构实

程序的基本结构实

假设有二个字变量Word1和Word2,编写程序段实现交换其值的功能。解:
方法1:用汇编语言指令简单“直译”上面的交换数据方法
DATA1SEGMENT

Word1DW?
Word2DW?
TempDW?

DATA1ENDS
CODE1SEGMENT

MOVAX, Word1
MOVtemp, AX;上二语句实现语句“Temp=Word1”
MOVAX, Word2
MOVword1, AX;上二语句实现语句“Word1=Word2”
MOVAX, Temp
MOVword2, AX;上二语句实现语句“Word2=Temp”

CODE1ENDS
这种方法虽然也能完成功能,但显然其不能充分利用汇编语言的特点,程序效率很低。
方法2:用汇编语言指令的特点来直接编译
DATA1SEGMENT

Word1DW?
Word2DW?

DATA1ENDS
CODE1SEGMENT

MOVAX, Word1
XCHGAX, Word2
MOVword1, AX;能XCHG Word1, Word2来代替这三条指令吗?

CODE1ENDS
该方法充分利用了汇编语言的特点,不仅省去了中间变量Temp的定义,而且程序的效率也提高了
返回列表