Board logo

标题: 程序的基本结构实 [打印本页]

作者: 苹果也疯狂    时间: 2015-1-27 15:53     标题: 程序的基本结构实

假设有二个字变量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的定义,而且程序的效率也提高了




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0