SmileBASIC 4.4.9
リファレンスマニュアル
更新日 2025/06/04
目次
- 命令概要(基本命令)
- 命令概要(表示命令)
- 命令概要(入力、サウンド、その他)
- ダイレクトモード専用命令
- 変数や配列の定義、操作に関する命令
- 制御命令
- 数学関連
- 文字列操作
- その他
- 各種入力
- 各種入力(Toy-Con)
- ファイル
- スクリーン制御
- テキストスクリーン入出力
- グラフィック
- スプライト
- レイヤー
- サウンド
- 高度な演算
- ソースコード操作
- サブプログラム
更新日 2025/06/04
・整数演算を行う演算子には「整数演算子」、実数演算を行う演算子には「実数演算子」と記載している。
・論理演算子は、演算結果が正しい場合整数1を、正しくない場合整数0を返す。
・ショートカット付き論理演算子は、第1項の評価結果で演算結果が決定される場合、第2項の評価をスキップする。
| () | 括弧 |
| [] | 配列参照 |
| -(単項) | 符号反転 |
| + | 加算,文字列の結合 |
| ー(2項) | 減算 |
| * | 乗算,文字列の繰り返し |
| / | 除算(実数演算子) |
| DIV | 整数除算(整数演算子) |
| MOD | 剰余(整数演算子) |
| << | 左シフト(整数演算子) |
| >> | 右シフト(符号つき、整数演算子) |
| <<< | 左シフト(整数演算子) |
| >>> | 右シフト(符号なし、整数演算子) |
| <<+ | 左ローテート(整数演算子) |
| >>+ | 右ローテート(整数演算子) |
| AND | 論理積(整数演算子) |
| OR | 論理和(整数演算子) |
| XOR | 排他的論理和(整数演算子) |
| NOT | ビット反転(整数演算子) |
| == | 等しい(論理演算子) |
| != | 等しくない(論理演算子) |
| < | 大きい(論理演算子) |
| > | 小さい(論理演算子) |
| <= | 以上(論理演算子) |
| >= | 以下(論理演算子) |
| && | ショートカット付き論理積(論理演算子) |
| || | ショートカット付き論理和(論理演算子) |
| ! | 反転(論理演算子) |
演算子の優先度は次の通り。
| () [] |
| -(単項) NOT ! |
| * / DIV MOD |
| + -(2項) |
| << >> <<< >>> <<+ >>+ |
| == != < <= > >= |
| AND |
| OR XOR |
| && |
| || |
・[]内の式の数は1個、もしくは配列の次元数のいずれか
・右の数が0の場合エラー
・/と異なり、結果は必ず整数になる
・右の数が0の場合エラー
A=201 DIV 5
・右の数が0の場合エラー
A=201 MOD 5
A=200 AND &HE7
A=128 OR &HA3
A=100 XOR &H4C
・1ビット左シフトを行うと整数を2倍した事になる
A=100 << 2
・1ビット右シフトを行うと整数を1/2にした事になる
・符号が考慮される。符号ビット(ビット31)は変化しない。ビット30はビット31がコピーされる。
A=100 >> 2 B=-10 >> 1
・1ビット左シフトを行うと整数を2倍した事になる
・<<と全く同じ動作をする
A=100 <<< 2
・1ビット右シフトを行うと整数を1/2にした事になる
・>>と異なり、符号が考慮されない。
A=100 >>> 2 B=-10 >>> 1
・シフトと異なり、ビット31から押し出されたビットはビット0側にコピーされる。
A= HEX$(&HFF00FF00 <<+ 8)
・シフトと異なり、ビット0から押し出されたビットはビット31側にコピーされる。
A= HEX$(&H00FF00FF >>+ 8)
・左の式が偽(0)の場合、右の式の計算は省略されて即座に0を返す
・左の式が真(!=0)の場合、右の式の計算は省略されて即座に1を返す