page0038
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
* OSECPU-ASKA入門 #0002
-(by [[K]], 2013.06.07)
** (0) はじめに
-以下の記事はver.0.46のWindows版を前提にしています。他の...
--たとえば osecpu046a.zip とかのことです
~
-もくじ
--[[page0036]]: #0000
--[[page0037]]: #0001
--[[page0038]]: #0002
** (1) for構文 #0
-for構文は、OSECPU-ASKAでは実は奥が深くていろいろな使い方...
#include "osecpu_ask.h"
int32s xsiz:R00, ysiz:R01, x0:R02, y0:R03, col:R04, ...
for (i = 0; i != 128; i++) {
xsiz = ysiz = (144 - i) * 2;
x0 = (320 - 144) + i;
y0 = (240 - 144) + i;
col = i * 0x020201;
junkApi_fillOval(0, xsiz, ysiz, x0, y0, col);
}
-このfor文は、i=0から127まで { } のプログラムを1回ずつ実...
--iは1ずつ増えています。それは「i++」と書いてあるからです...
--iが127で終わってしまうのは、i=128になったときに、「i !=...
--ASKAではC言語などとは異なり、繰り返し実行する命令が1つ...
-C言語やそのほかの言語でも、for構文を持つ言語の多くは
for (i = 0; i < 128; i++) {
...
}
-のような書き方をするのが普通だと思います。つまりノットイ...
--まあ気にしないでもいいんですけどね。
--ノットイコールの場合だけ最適化が有利になるというのは、...
** (2) コメントについて
-ASKAでは /* */ 型のコメントと、// 型のコメントをサポー...
--あれ、最近 /* */ 型は使ってないからちょっと自信ない・...
--// 型は間違いなくできますので、こっちがおすすめです。
--/* */ 型は仮にできたとしても、行をまたぐとうまく行かな...
-// 型のコメントについてですが、現在プリプロセッサの文字...
ということで、「.」をつけるなどして、とにかくコメントの最...
--おっと、もちろん半角カタカナもやめてあげてくださいね!...
--OSECPU-ASKAは短期間で無理やり作った言語なので、いろいろ...
** (3) できそうでできないこと
-変数の宣言時に、初期値の代入を書く。
int32s i:R12 = 3; // これはできない. できたらうれしいの...
~
-レジスタ割り付けを書かない変数宣言。
int32s i, j, k; // これはC言語ぽくってかっこいいけど、で...
~
-intと書いてみたい。
int i:R12; // ダメです. エラーです.
--まあこれについては #define int int32s とかやればでき...
~
-できそうでできないことはきっとたくさんあります。このwiki...
--言語に対するおもいやりとやさしさをお願いします!
** (4) 色の指定と16進数について
-色の指定でどうしても16進数を使うことになると思うので、解...
-とはいえ、0,1,2,3,4,5,6,7,8,9ときてそこからA,B,C,D,E,Fと...
~
-プログラムでは col = i * 0x020201; なんていう表現が出て...
i= 0 のとき col=0x000000
i= 1 のとき col=0x020201
i= 2 のとき col=0x040402
i= 3 のとき col=0x060603
i= 10 のとき col=0x14140a
i=127 のとき col=0xfefe7f
-あのプログラムはこうやって色を計算していたわけです。
~
-たとえばこういう計算もできるのです。
col = red * 0x10000 + green * 0x100 + blue; // red, gree...
~
-ホームページとかで色を使う程度だと、計算で色を作るという...
//c+=0x100; // xxyy00
** つづく
-[[page0039]]につづく
* こめんと欄
#comment
終了行:
* OSECPU-ASKA入門 #0002
-(by [[K]], 2013.06.07)
** (0) はじめに
-以下の記事はver.0.46のWindows版を前提にしています。他の...
--たとえば osecpu046a.zip とかのことです
~
-もくじ
--[[page0036]]: #0000
--[[page0037]]: #0001
--[[page0038]]: #0002
** (1) for構文 #0
-for構文は、OSECPU-ASKAでは実は奥が深くていろいろな使い方...
#include "osecpu_ask.h"
int32s xsiz:R00, ysiz:R01, x0:R02, y0:R03, col:R04, ...
for (i = 0; i != 128; i++) {
xsiz = ysiz = (144 - i) * 2;
x0 = (320 - 144) + i;
y0 = (240 - 144) + i;
col = i * 0x020201;
junkApi_fillOval(0, xsiz, ysiz, x0, y0, col);
}
-このfor文は、i=0から127まで { } のプログラムを1回ずつ実...
--iは1ずつ増えています。それは「i++」と書いてあるからです...
--iが127で終わってしまうのは、i=128になったときに、「i !=...
--ASKAではC言語などとは異なり、繰り返し実行する命令が1つ...
-C言語やそのほかの言語でも、for構文を持つ言語の多くは
for (i = 0; i < 128; i++) {
...
}
-のような書き方をするのが普通だと思います。つまりノットイ...
--まあ気にしないでもいいんですけどね。
--ノットイコールの場合だけ最適化が有利になるというのは、...
** (2) コメントについて
-ASKAでは /* */ 型のコメントと、// 型のコメントをサポー...
--あれ、最近 /* */ 型は使ってないからちょっと自信ない・...
--// 型は間違いなくできますので、こっちがおすすめです。
--/* */ 型は仮にできたとしても、行をまたぐとうまく行かな...
-// 型のコメントについてですが、現在プリプロセッサの文字...
ということで、「.」をつけるなどして、とにかくコメントの最...
--おっと、もちろん半角カタカナもやめてあげてくださいね!...
--OSECPU-ASKAは短期間で無理やり作った言語なので、いろいろ...
** (3) できそうでできないこと
-変数の宣言時に、初期値の代入を書く。
int32s i:R12 = 3; // これはできない. できたらうれしいの...
~
-レジスタ割り付けを書かない変数宣言。
int32s i, j, k; // これはC言語ぽくってかっこいいけど、で...
~
-intと書いてみたい。
int i:R12; // ダメです. エラーです.
--まあこれについては #define int int32s とかやればでき...
~
-できそうでできないことはきっとたくさんあります。このwiki...
--言語に対するおもいやりとやさしさをお願いします!
** (4) 色の指定と16進数について
-色の指定でどうしても16進数を使うことになると思うので、解...
-とはいえ、0,1,2,3,4,5,6,7,8,9ときてそこからA,B,C,D,E,Fと...
~
-プログラムでは col = i * 0x020201; なんていう表現が出て...
i= 0 のとき col=0x000000
i= 1 のとき col=0x020201
i= 2 のとき col=0x040402
i= 3 のとき col=0x060603
i= 10 のとき col=0x14140a
i=127 のとき col=0xfefe7f
-あのプログラムはこうやって色を計算していたわけです。
~
-たとえばこういう計算もできるのです。
col = red * 0x10000 + green * 0x100 + blue; // red, gree...
~
-ホームページとかで色を使う程度だと、計算で色を作るという...
//c+=0x100; // xxyy00
** つづく
-[[page0039]]につづく
* こめんと欄
#comment
ページ名: