1、.include “f2407.h“.def _c_int0.data data0 .word 0 将 0 的值装入到 data0 下面同样 data1 .word 1data2 .word 2data3 .word 3data4 .word 4udata5 .word 5data6 .word 6data7 .word 7CALL SYSINIT ;无+统初始化.text_c_int0: LDP #DP_B01 ;数据页指针 ;DP_B01=4;将 4 赋给指针 DP LACC data0 ;data0 的值赋给累加器 ACC ADD #1 ;累加器 ACC 加 1SACL data1 ;将
2、 ACC 的值加 1 后的值装入到 data1 中NOP ;空操作(什么也不作)MAR *, AR1 ;定义 AR1(系统提供的 8 个辅助寄存器 AR0AR7 中的一个)LAR AR1,#data3 ;将 data3 的地址的值赋给 AR1LACC data2 ;将 data2 的值给累加器 (若# data2 则为将 data2 的地址值给累加器)ADD * ;ACC=ACC+*AR1SACL data3 ; 将累加器中的值与 AR1 所指向的值相加后的值装入到 data3 NOP LACC #100 ;将 100 的值给了累加器 ACC(若#100 则意思是 100 的地址值给累加器)L
3、AR AR1, #data4 ;将 data4 的地址的值赋给 AR1ADD *+ ;ACC=ACC+*AR1; AR1=AR1+1SACL data5 ;将累加器中的值与 AR1 所指向的值相加后的值装入到 data5NOPLACC #10 ;将 10 的值给了累加器 ACC(若#10 则意思是 10 的地址值给累加器)LAR AR1,#data6LAR AR0,#2ADD *0+ ; ACC =ACC+*AR1;AR1 =AR1+AR0SACL data7NOPLOOP: NOP ; B LOOP ;SYSINIT: SETC INTM ;关中断CLRC SXM ;符号扩展有效(有关正负号
4、 1 和 0 的,扩展后不乱)CLRC OVM ;溢出模式CLRC CNF ;B0 数据存储器使用(SETC CNF 是程序数据存储器)LDP #0E0HSPLK #0200H, SCSR1;30M ;将值 0200 送到寄存器 SCSR1 中(30M 不使用任何模块)-(相当于单片机中的MOV)SPLK #6FH, WDCR ;看门狗控制寄存器(监视程序运行,用运行的时间来监视)LDP #0SPLK #0000H, IMR ;中断屏蔽寄存器(IMR)SPLK #0FFFFH, IFR ; 中断标志寄存器(IFR)RET.END死循环无条件跳转另外的;SETC INTM ; 关(掉)中断CLRC SXM ;符号扩展有效(有关正负号 1 和 0 的,扩展后不乱)CLRC OVM ;