下载 > 资源分类 >  开发技术 >  硬件开发 > 初学asm的简单例子

初学asm的简单例子

2004-07-21 上传大小:23KB
【例2.8】存储器与寄存器间数据传送。
MOV  AX,BUF	;BUF是变量,源操作数为直接寻址
MOV  BH,[DI]	;源操作数为寄存器间接寻址
MOV  DI,ES:3[SI]	;源操作数为变址寻址,使用跨段前缀
MOV  BP,3[BX+SI]	;源操作数为基址加变址寻址
MOV  BUFA,DL	;BUFA是一字节变量
MOV  [BP],AX	;使用SS段寄存器
MO
V  DS:[BP],DL	;使用跨段前缀
MOV  BUF,DS	;BUF是个字变量
MOV  ES ,BUF

【例2.10】将一种代码转换成另一种代码。
【例2.16】更改数据段段首址。
【例2.23】带借位减运算。
【例2.48】比较数据中STR1字符串和附加段中STR2字符串是否相同。
假设两个字符串长度一样,为COUNT个字节。比较的结果存入RESULT单元,
结果为0表示相等,为-1(即FFH)表示不等。
【例2.51】用重复前缀比较两个字符串相等。
【例2.55】把数据区的数据按正、负数分开,并分别送至两个缓冲区。
【例2.56】利用子程序完成将AL低4位中的一位16进制数转换成对应的ASCII码
【例3.4】用算术运算符进行数值表达式运算。
【例3.7】用属性运算符表示类型属性。
【例3.8】下面程序段的某些语句是错误的。
【例3.9】用属性运算符定义新变量
【例3.11】分离变量类型。
【例6.5】用软中断INT 60H、发声中断服务程序INT 61H以及软中断INT 62H、 INT 63H ,
实现字符串“intel 80486 DX2/66 CPU”显示、扬声器发声和变色三角形的显示功能,
定时器ICH中断作为计数器使用。
................................................................
................................................................
7.1  实验步骤
在PC机上运行汇编程序必须经过以下几个步骤:
(1)编辑源程序。利用文本编辑工具编辑源程序,
生成一个汇编语言源程序的纯文本文件?惚嘤镅栽闯绦虻睦┱姑?签qASM。
(2)汇编源程序。用汇编器汇编源程序生成目标代码文件,目标代码文件的扩展名
是?OBJ,汇编器还可以生成列表文件和交叉参考文件?如果源程序有语法错误行,
汇编器就不生成目标代码文件。这时,必须重新编辑源程序,修改语法错误的行。
当发现源程序中的某些行含不确定因素时,汇编器会给出警告信息,但仍按缺省处
理办法生成目标代码文件。此时,可以重新编辑源程序,消除不确定因素。
(3)连接目标程序。利用连接器连接目标代码程序和库函数代码生成可执行程序文件。
通常DOS平台上的可执行程序文件的扩展名是?EXE。一般单个?
或者与库函数连接时,如果在目标代码文件或者库中找不到所需的连接信息,
连接器就会发生错误提示信息,而不生成可执行程序文件。这时,就要重新编辑源程序,
并汇编源程序。
(4)调试可执行程序。程序的动态调试是在形成可执行程序文件后,针对可执行程序进行的。
DEBUG是简单而有效的动态调试工具,利用调试工具动态地调试程序,找出程序中的问题。
如果发现程序中有问题,那么必须重新编辑、汇编源程序。
下面以一个简单的例子说明汇编源程序的上机过程。
假定要在显示器显示如下一行信息:
I    am    a    student!
那么,其汇编源程序的过程如下:
STACK	SEGMENT	STACK
	DB   200   DUP(0)
STACK	ENDS
DATA	SEGM0ENT
	BUF	DB    I    am    a    student!$ 
DATA	ENDS
CODE	SEBMENT
	ASSUME  CS:CODE,DS:DATA,SS:STACK
START:	MOV	AX,DATA
	MOV	DS,AX
	LEA	DX,BUF
	MOV	AH,9
	INT	21H
	MOV	AH,4CH
	INT	21H
	CODE	ENDS
	END	START
第一步:编辑源程序。假定源文件名为EXAM?ASM。
第二步:汇编源程序EXAM?ASM。
A>MASM    EXAM  ;
此命令是调用宏汇编程序MASM对源文件EXAM?ASM进行汇编,生成目标文件EXAM?OBJ.
若汇编无错误,则进入第三步。
第三步:连接目标程序文件EXAM?OBJ。
A>LINK    EXAM  ;
若连接成功,则进入下一步。
第四步:运行可执行文件EXAM?EXE
A>EXAM
运行结果如下:
I    am    a    student!
若未得到预期的结果,可检查EXAM?ASM文件内容,修改错误,再次汇编、连接、运行,直到满意为止。
...展开收缩
综合评分:3.9(71位用户评分)
直接下载 开通VIP会员 免积分下载

评论共有4条

name
qq_257149292015-05-08 20:12:33
例子 不错 可以借鉴
name
yzstrikefreedom2014-06-24 14:32:11
不错,正在学习,值得参考
name
guyanmilu2014-06-24 11:45:59
这个例子不错,可以借鉴
name
huangzhuang10132012-08-17 15:01:11
未得到预期的结果,可检查EXAM?ASM文件内容,修改错误,再次汇编、连接、运行,直到满意为止。

评论资源

您不能发表评论,可能是以下原因:

登录后才能评论

待评论资源
 

热门专辑

关闭
img

spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip

CSDN VIP年卡 4000万程序员的必选现在开通,立省522元
下载
img

初学asm的简单例子

会员到期时间:剩余下载个数:
VIP下载

积分不足!

资源所需积分 当前拥有积分
您可以选择
开通VIP年卡
4000万
程序员的必选
600万
绿色安全资源
现在开通
立省522元
或者
购买C币兑换积分 C币抽奖
img
资源所需积分 当前拥有积分
VIP年卡全年1200个资源免积分下载促销价78元,开通立省522元
下载
下载

兑换成功

你当前的下载分为234开始下载资源
你还不是VIP会员
开通VIP会员权限,免积分下载
立即开通

你下载资源过于频繁,请输入验证码

你下载资源过于频繁,请输入验证码

您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:webmaster@csdn.net!

举报

若举报审核通过,可奖励20下载分

  • 举报人:
  • 被举报人:
  • 举报的资源分:
  • *类型:
  • *详细原因: