- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章软件开发1
start: STM #0, SWWSR STM #STACK+10H, SP STM #x, AR1 RPT #3 MVPD table, *AR1+ STM #x, AR2 STM #y, AR3 LD *AR2,T ;T=x0 MPYU *AR3+, A ;A=x0×y0 (U×U) STL A,@w0 ;w0=x0×y0 LD A, -16,A ;A右移16位,A高位→A低位 MACSU *AR2+, *AR3-, A ;A+=y1×x0(S×U) MACSU *AR3+, *AR2, A ;A+=x1×y0(S×U) STL A, @w1 ;w1=A LD A, -16, A ;A右移16位,A高位→A低位 MAC *AR3,*AR2, A ;A+=y1×x1(S×S) STL A, @w2 ;w2=A的低16位 STH A, @w3 ;w3=A的高16位 end: B end .end 3. 小数运算 两个16位整数相乘:乘积总是“向左增长”。这意味着多次相乘后乘积将会很快超出定点器件的数据范围。 两个小数相乘:乘积总是“向右增长”。这就意味着超出定点器件数据范围的将是不太感兴趣的部分。 1) 小数的表示方法 采用2的补码表示小数:最高位为符号位,数值范围从-1~+1。 MSB … LSB 0/1(符号位) . 2-12-2 … 2-15 十进制小数转换成十六进制数:由十进制小数乘以32768后,再将其整数部分转换。 如: -1: |-1|×32768 再求反+1 8000h -0.5: |-0.5|×32768 再求反+1 C000h 0: → 0000h 0.5: 0.5×32768 4000h 1: 1×32768 7FFFh 汇编语言程序中:小数0.123 .Word 32768*123/1000。 2) 小数乘法中的冗余符号位 问题:两个带符号小数相乘,将出现得到的积带有两位符号位。 解决冗余符号位的办法:在程序中设定状态寄存器ST1中的FRCT(小数方式)位为1,在乘法器将结果传送至累加器时就能自动地左移1位,累加器中结果为Szzzzzz0(Q7格式),自动消去了两个带符号数相乘时产生的冗余符号位。 小数乘法编程时:应当先设置FRCT位。 SSBX FRCT MPY *AR2,*AR3,A STH A, @Z 【例4.19】 编制计算 的程序段,其中数据均为小数。 .title “exp19.asm” .mmregs STACK .usect “STACK”,10H .bss a, 4 .bss x, 4 .bss y, 1 .data table: .word 1*32768/10 .word 2*32768/10 .word -3*32768/10 .word 4*32768/
您可能关注的文档
最近下载
- GP-150中文说明书.pdf VIP
- 中文说明书-船舶自动识别系统(AIS)FA-150版.docx VIP
- FAR21X7_28X7雷达中文操作说明书.pdf VIP
- 2025届广东深圳市物理高一第一学期期末教学质量检测试题含解析.doc VIP
- 广东高一物理第一学期期末试题.doc VIP
- 水资源及其利用——人类拥有的水资源及其分布.pdf VIP
- FURUNO古野OZS56490D_NX700使用说明书.pdf VIP
- 青岛啤酒股份有限公司成本控制存在问题及对策研究.doc
- 生物安全柜使用与维护保养记录表.doc VIP
- 输变电工程施工质量验收统一表式(变电工程电气专业).docx VIP
文档评论(0)