⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test1.asm

📁 asfpga is an assembler written for use in FPGA design. It can be easily modified for your instructio
💻 ASM
字号:
;***USER EQUATES***
	LED1 EQU 01
	LED2 EQU 02
	LED3 EQU 03
	LED4 EQU 04
	LED5 EQU 05
	LED6 EQU 06
;
; Base Page of r/w memory (DATA) at 00
    DATA EQU 00
; Base of where IO devices (IO) begin
    IO EQU 04
    CODE EQU 810
    START EQU FF0
;
;
    ORG FF0
;
; Jump from reset point to where user code belongs
    LDI M, 08
    LDI X, 10
    JMP X
;
	ORG 810
;
; Load FF into A and store at LED1's address
	LDI A, FF
	LDI M, IO
	LDI X, LED1
	STRL [M,X], A
; Setup registers for exchanges
    LDI A, 25
    LDI B, 13
    LDI M, 42
    LDI X, 07
; Test exchanges
    XCHG A, B
    XCHG A, M
    XCHG B, X
; Test arithmetic (no carries)
    LDI A, 01
    LDI B, 02
    ADC A, B
    ADC A, A
    SBC A, B
; Test arithmetic w/ carry and test branch on carry
    LDI A, F0   
    ADC A, A
    LDI A, F0
    LDI B, 23    
    ADC A, B
    BC #CARRY
; If no carry then return
    RET
; If carry then continue
#CARRY
; Test for borrow    
    LDI A, 02
    LDI B, F3
    SBC A, B
; Test for zero flag on arithmetic instructions
    LDI A, 00
    LDI B, 00
    ADC A, B
    ADC A, A
    SBC A, B
    LDI X, FF
    INC X
    LDI B, 01
    DEC B
; Test brach on zero
    BZ #ZERO
; If not zero
    RET
; If zero then continue
#ZERO
; Test clear and NOP instructions
    CLR X
    CLR B
    CLR A
    NOP
; Test remaining branch instructions
    BRA #CONTINUE
    RET
#CONTINUE
    ADC A, B
    BNC #NOCARRY
    RET
#NOCARRY
    LDI A, 01
    ADC A, B
    BNZ #NOTZERO
    RET
#NOTZERO
; Test logical operations
    CMP A, B
    AND A, B
    OR A, B
    XOR A, B
; Test long load
    ORG C00
    LDI A, 45
    LDI M, 05
    LDI X, 00
    STRL [M,X], A
; Finish
    RET

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -