「标准库」

差異處

這裏顯示兩個版本的差異處。

連向這個比對檢視

兩邊的前次修訂版前次修改
下次修改
前次修改
wiki:自动化与科技指导:minecoprocessors:标准库 [2023/12/08 10:36] – [sleep] nikoqwwiki:自动化与科技指导:minecoprocessors:标准库 [2023/12/11 11:19] (目前版本) nikoqw
行 2: 行 2:
 提供一些通用的功能,如延时等。 提供一些通用的功能,如延时等。
 ===== 约定 ===== ===== 约定 =====
-  * 若给定参数在函数定义域之外,则行为未定义。+  *  ''_start'' 函数应当永不返回。若 ''_start'' 函数返回,则行为未定义。 
 +  * 传给函数的自变量应始终在定义域之内。若给定参数在函数定义域之外,则行为未定义。
  
 ===== 代码 ===== ===== 代码 =====
 <code-splitter> <code-splitter>
 +;
 +; 在第一行写您程序的
 +; 名称。
 +
 ; NPCCRAFT ; NPCCRAFT
 ; 微处理器「标准库」 ; 微处理器「标准库」
-; 请赴 WIKI 「自动化 +; 请赴 WIKI 「自动化与科技指 
-与科技指导:min +导:minecoprocesso 
-; ecoprocessors +-rs:标准库」查看用法。
-; :标准库」查看用法。+
 JMP _start JMP _start
  
-; 【FUNC】====+; 【FUNC】c====
 sleep: sleep:
 ; Main logic ; Main logic
 sleep__loop: sleep__loop:
-DEC d +DEC c 
-CMP d, 0+CMP c, 0
 JNZ sleep__loop JNZ sleep__loop
 RET RET
  
-; 【FUNC】====+; 【FUNC】c,,d====
 pull_in_Rd: pull_in_Rd:
 CMP c, 0 CMP c, 0
行 59: 行 63:
 RET RET
  
-; 【FUNC】==== +; 【FUNC】dc==== 
-out_h_for_while+out_h_for_wle
-CMP c, 0+CMP d, 0
 JZ ohfw__pf JZ ohfw__pf
-CMP c, 1+CMP d, 1
 JZ ohfw__pb JZ ohfw__pb
-CMP c, 2+CMP d, 2
 JZ ohfw__pl JZ ohfw__pl
-CMP c, 3+CMP d, 3
 JZ ohfw__pr JZ ohfw__pr
-HLT  ; 非法+HLT  ; 非法
  
 ohfw__pf: ohfw__pf:
行 106: 行 110:
  
 ^ 传参方式        ^ 值类型  ^ 作用 / 说明       ^ ^ 传参方式        ^ 值类型  ^ 作用 / 说明       ^
-| 寄存器       | $n>0$        | 延时的 cycles 数目  |+| 寄存器       | $n>0$        | 延时的 cycles 数目  |
 ==== pull_in_Rd ==== ==== pull_in_Rd ====
 <wrap cjk-em>该函数为 Rd 函数。</wrap> <wrap cjk-em>该函数为 Rd 函数。</wrap>
行 126: 行 130:
 | 寄存器 d       | 指定红石输入口得到的值  | | 寄存器 d       | 指定红石输入口得到的值  |
  
-==== out_h_for_while ====+==== out_h_for_wle ====
 <wrap hi>**【作用】:**</wrap> <wrap hi>**【作用】:**</wrap>
  
行 136: 行 140:
  
 ^ 传参方式        ^ 值类型 ^ 作用 / 说明       ^ ^ 传参方式        ^ 值类型 ^ 作用 / 说明       ^
-| 寄存器       | $[0, 3]$      | 红石输出口编号。 +| 寄存器       | $[0, 3]$      | 红石输出口编号。 
-| 寄存器       | $n>0$       | 输出多长时间。  |+| 寄存器       | $n>0$       | 输出多长时间。  |
wiki/自动化与科技指导/minecoprocessors/标准库.1702002995.txt.gz · 上一次變更: 2023/12/08 10:36 由 nikoqw
GNU Free Documentation License 1.3 若無特別註明,本 wiki 上的內容都是採用以下授權方式: GNU Free Documentation License 1.3