有符号定点小数和无符号定点小数相乘
FMULSU Rd,Rr 16≤d≤23,16≤r≤23
操作:R1:R0←Rd×Rr(unsigned(1.1 5)←unsigned(1.7)×unsigned(1.7))PC←PC+1
机器码:00000 0011 1ddd 1rrr ,周期:2
说明:该指令完成的是一个有符号8位数和一个无符号8位数相乘得到一个1 6位有符号数,并将结果左移1位后保存在R1:R0中的操作。其中,R1为高8位,R0为低8位。指令中,被乘数Rd是一个包含有符号定点小数的寄存器,乘数Rr是一个包含无符号定点小数的寄存器,小数点固定在第7位和第6位之间。结果为1 6位有符号定点小数,小数点固定在第15位和第14位之间。
注:(N.Q)表示一个小数点左边有N个二进制数位,右边有Q个二进制数位。格式为(N 1.Q1)和(N2.02)的两个小数,相乘的结果的格式为((N 1+N2).(Q1+Q2))。对于要保留小数的有效位的处理应用,输入的数据格式通常采用(1.7),产生的结果为(2.1 4)格式。因此,为了能够与输入的格式相匹配,将输出的结果左移一位。FMULS指令的执行周期与MULSU相同,但FMULSU比MULSU增加了一个左移操作。
对状态标志位的影响:
电子街推荐您: