這是本文件的舊版!
示范程序
「标准库」
提供一些通用的功能,如延时等。
; 【作用】 ; 延时 ; 【参数】 ; a[I][int]:延时的 cycles 数目,>0 ; 【内部使用的寄存器】 ; b[int]:延时计数 sleep: PUSH b ; Init reg MOV b, 0 ; main logic sleep__loop: ADD b, 1 CMP b, a JNZ sleep_loop POP b RET ; 【作用】 ; 等待某个红石输入寄存器得到高电平 ; 【参数】 ; a[I][int]:红石寄存器 ID wait_in_high: CMP a, 0 JZ wait_in_high__pf CMP a, 1 JZ wait_in_high__pb CMP a, 2 JZ wait_in_high__pl CMP a, 3 JZ wait_in_high__pr HLT ; a 非法 wait_in_high__pf: CMP pf, 0x00 JZ wait_in_high__pf RET wait_in_high__pb: CMP pb, 0x00 JZ wait_in_high__pf RET wait_in_high__pl: CMP pl, 0x00 JZ wait_in_high__pf RET wait_in_high__pr: CMP pr, 0x00 JZ wait_in_high__pf RET
延时器
类似于中继器,但得到高电平输入时,立刻输出高电平。
引脚作用
后引脚:输入
前引脚:输出
MOV ports, 0010b _start: ; wait_in_high(1); MOV a, 1 CALL wait_in_high ;; MOV pf, 0xff ; sleep(10); MOV a, 10 CALL sleep ;; MOV pf, 0x00 JMP _start