16mac.asm
来自「1、(1)32bit乘法的指令解释 (2)volume1的load.asm基础」· 汇编 代码 · 共 25 行
ASM
25 行
.global _main
.text
N .set 10 ;设置计数值
_main:
mvkl .s1 0x80000,a8
mvkh .s1 0x80000,a8 ;A8存放数据地址1
mvkl .s1 0x60000,a9
mvkh .s1 0x60000,a9 ;A9存放数据地址2
mvk .s2 N,b0 ; B0存放计数值
mvk .s1 0,a5 ; a5进行初始化赋0
loop
LDH .D1 *A8++,A2 ; A2存放数据1
LDH .D1 *A9++,A3 ; A3存放数据2
NOP 4 ;LDH指令需要4个时钟周期延迟
MPY .M1 A2,A3,A4 ; A2与A3相乘结果存在A4
NOP ;MPY指令需要1个时钟周期延迟
ADD .L1 A4,A5,A5 ;把相乘的结果累加到A5
[B0] SUB .L2 B0,1,B0 ;计数值减1
[B0] B .S1 loop ; 计数判断
NOP 5
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?