📄 ex05.asm
字号:
;/******************************************************************************/
;/* exam.asm */
;/* */
;/* This is proprietary information, not to be published -- DIGIPRO DATA */
;/* Copyright (C) 2002, DigiPro Information Co.,Ltd. All Rights Reserved. */
;/* */
;/* Author: Wu DingMing */
;/* Date: August 12, 2002 */
;/******************************************************************************/
;ex01.asm
;DSP算术运算指令实验
T .set 00EH
BRC .set 01AH
SWWSR .set 028H
CLKMD .set 058H
DATA0 .SET 00H
DATA1 .SET 01H
DATA2 .SET 02H
DATA3 .SET 03H
DATA4 .SET 04H
DATA5 .SET 05H
DATA6 .SET 06H
DATA7 .SET 07H
DATA8 .SET 08H
DATA9 .SET 09H
DATA10 .SET 0AH
DATA11 .SET 0BH
DATA12 .SET 0CH
.def _main
.def _c_int00
.def _DELAY
.text
_c_int00:
RPT #1000H
NOP
LD #40H,DP
STM #4000H ,SP
ADDM #7FFH,*(SP)
ANDM #0FFFEH,*(SP)
SSBX INTM ;禁止中断
STM #07FFFH,SWWSR ;置外部等待时间
STM #06004H,CLKMD
LD #0FFFFH,A
CALL _DELAY
STM #087FBH,CLKMD
LD #0FFFFH,A
CALL _DELAY
B _main
_main: RSBX CPL
NOP
NOP
SSBX INTM ;禁止中断
LD #0043h,A
ST #0055h,DATA0
NOP
ADD DATA0,A ;加法操作: DATA1 = A + DATA0
STL A,DATA1
NOP
NOP
NOP
BRK1: NOP
LD #0x00A2,A
ST #0x0038,DATA2
NOP
SUB DATA2,A ;减法操作: DATA3 = A - DATA2
STL A,DATA3
NOP
NOP
NOP
BRK2: NOP
STM #0x0421,T
MPY DATA3,A ;乘法操作: DATA5,DATA4 = DATA3 * T
STL A,DATA4
STH A,DATA5
NOP
NOP
NOP
BRK3: NOP
ST #0x1000,DATA6
ST #0x0021,DATA7
RSBX SXM ;除法操作: DATA8 = DATA6 % DATA7; DATA9 = DATA6 / DATA7;
LD DATA6,A
RPT #15
SUBC DATA7,A
STL A,DATA8
STH A,DATA9
NOP
NOP
NOP
BRK4: NOP
ST #0x0144,DATA10
SQUR DATA10,A ;平方操作: DATA11,DATA12 = DATA10 * DATA10
STL A,DATA11
STH A,DATA12
NOP
NOP
NOP
BRK5: NOP
LD #0ffffh,A
AND #00ffh,A ;逻辑与操作
NOP
NOP
NOP
NOP
LD #0ff00h,A
OR #00ffh,A ;逻辑或操作
NOP
NOP
NOP
NOP
LD #0ff00h,A
XOR #00ffh,A ;逻辑异或操作
NOP
NOP
SSBX CPL
B $
_DELAY: STLM A,BRC
RPTB _DELAY1-1
NOP
NOP
NOP
NOP
_DELAY1:RET
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -