第八讲汇编程序设计.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八讲汇编程序设计

第八讲 汇编语言程序设计 主要内容 二,加减法和乘法运算 二,加减法和乘法运算 二,加减法和乘法运算 * 三,双操作数乘法 1.64位加法和减法运算 2.32位乘法运算 四,长字运算和并行运算 五,小数运算 六,除法运算 二,加、减法和乘法运算 一,汇编语言程序的格式 七,浮点运算 一,汇编语言程序的格式 **************************************************************** * example.asm y=a1*x1+ a2*x2+ a3*x3+ a4*x4 * **************************************************************** .title “example.asm” .mmregs STACK .usect “STACK”,10h ;allocate space for stack .bss a,4 ;allocate 9 word for variates .bss x,4 .bss y,1 .def start .data table: .word 1,2,3,4 ;data follows…. .word 8,6,4,2 .text ;code follows… start: STM #0,SWWSR ;adds no wait states STM #STACK+10h,SP ;set stack pointer STM #a,AR1 ;AR1 point to a RPT #7 ;move 8 values MVPD table,*AR1+ ;from program memory into data memory CALL SUM ;call SUN subrotine end: B end SUM: STM #a,AR3 ;the subrotine implement STM #x,AR4 ;multiply-accumulate RPTZ A,#3 MAC AR3+,AR4+,A STL A,@y RET .end 助记符(空格或Tab) [操作数] (空格或Tab)[;注释] [标号][:] (空格或Tab) 标号——供本程序的其他部分或其他程序调用。标号是任选项,标号后面可以加也可以不加冒号“:”。标号必须从第1列写起,标号最多可达32个字符(A~Z,a~z,0~9,_,以及$),但第1个字母不能以数字开头。引用标号时,标号的大小写必须一致。标号的值就是SPC(段程序计数器)的值。如果不用标号,则第一个字母必须为空格、分号或星号(*)。 助记符——助记符指令、汇编指令、宏指令和宏调用。作为助记符指令,一般用大写;汇编命令和宏命令,以句号“.”开始,且为小写。汇编命令可以形成常数和变量,当用它控制汇编和链接过程时,可以不占存储空间。指令和汇编命令都不能写在第1列。 操作数——指令中的操作数或汇编命令中定义的内容。操作数之间必须用逗号“,”分开。有的指令无操作数,如NOP、RESET。 注释——注释从分号“;”开始,可以放在指令或汇编命令的后面,也可以放在单独的一行或数行。注释是任选项。(如果注释从第1列开始,也可以用“*”号。) 一,汇编语言程序的格式 .title ”zhou1.Asm” .mmregs STACK .usect ”STACK,10H ;堆栈的设置 .bss x,1 ;为变量分配4个字的存储空间 .bss y,1 .bss w,1 .bss z,1 .def stalt .data table: .word 10,26,23 ;x,y,w .text start: STM #0,SWWSR ;插入0个等待状态 STM #STACK+10H,SP ;设置堆栈指针 STM #x,ARl ;ARl指向x RPT #2 ;移3个数据 MVPD table, *ARl+ ;程序存储器 CALL SUMB end: B end SUMB: LD @x,A ADD @y,A SUB @w,A STL A,@z RET .end [例1]计算z=x+y-w。 .title ”zhou2.asm” .mmregs STACK: .usect ”STACK”,10H ;堆栈的设

您可能关注的文档

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档