小説・絵などのもくじ
- こちら - 。  -  (別窓)

saylus(俺)について
- こちら - 。   -   (別窓)

アルカナコレクション
- こちら - 。   -   (別窓)

 


るべれてん 【 saylus : [根性] 】

[ジョブ]
サラリーマン
フリーライター
見習いカトリック信徒
エクソシスト

[レベル]
21

[称号]
割愛

[HP]
2051 / 5634

[MP]
315 / 645

 

 

 

サイラスさんの小説事情スポンサー広告
> CASLⅡ rァ コマンド? なお兄さん> サイラスさんの小説事情プログラマにっき
> CASLⅡ rァ コマンド? なお兄さん
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
--.--.--(--:--)|スポンサー広告||TOP↑



BGMはFFTのチュートリアルの曲でお願いします。
おにーさんアレが大好きでしょうがないんだよぅ。
Dの中尉です。



おとつい辺りにのっけたプログラムがちょっとお兄さん的にわかり辛いと感じたので、
もうちょっと解説してやろうと思います。
お兄さんは勉強家っ。
でも記憶力はクソ野郎並み
これ書いてる途中に寝ちゃったのも内緒。





まずは、文中に使っている命令文から。



[ 加減算命令 ]

・ADDA
マイナス値も考えた加算を行う命令。
加算結果は汎用レジスタ(General Register)に格納される。
主に四則計算を行う時に使われる。

・ADDL
マイナス値を考えない加算を行う命令。
加算結果は汎用レジスタに格納される。
主に番地計算を行う時に使われる。
しかしお兄さんのレベルじゃまだ使いこなせない。



・SUBA
マイナス値も考えた減算を行う命令。
減算結果は汎用レジスタ(General Register)に格納される。
主に四則計算を行う時に使われる。

・SUBL
ここまで書きゃもう言いたい事はわかるだろ?





後、何故かSUBA命令の覚え方が『スバ』だったりとシュールな事実もありますが
お兄さんそんな覚え方せずにスバッと覚え・・・・・・
ごめんなさい。もう言いません。こんぺいとうあげます。



後使っている命令はそうだな。
マクロ命令とロード、ストア、DCにDSか。
一気に説明するぜ。


[ マクロ命令 ]

・IN
言わずもがなinput.
インプットったらインプット。
第一オペランドに入力された文字データを格納する領域を、
第二オペランドに入力される文字データ数を格納する領域を
指定すれば幸せだね。

・OUT
もう説明いらないんじゃね。
output命令。
出力ったら出力。
第一オペランドに出力する文字を。
第二オペランドに出力する文字数を指定する。
尚、例えば 『 ロリコンは世界を救う 』 と言う文字がA番地に格納されていて、
隣接するB番地に 『 いいえ、それはケフィアです 』 と入力されていたとする。

       OUT A,=21

と入力したら、A番地を21文字出力するってーコトだから
ロリコンは世界を救う で10文字
あぶれた11文字の分は 『 いいえ、それはケフィア 』 が出力されるのだ。
ここんとこの仕様はしっかり覚えておいたら幸せ。
ただし、ちょっと卑劣な手なのでこれを利用するのは相当行き詰った時じゃないとだめだと思う。





[ のこりもの ]



・DS命令 DC命令
DCは領域を取った上に初期値まで代入しちゃおうって言う
かんなり便利な命令。
例えば、

YABOU DC ' アリス様に箒で叩かれたい '

と入力すると、YABOU番地に『アリス様に箒で叩かれたい』と言う文字列が格納されるのだ。
何て便利な野望番地。
とりあえずアリス様欲しいです。
蛇足だけど、ROでDCって言うとマーチャントスキルのディスカウントになるんだよね。



DSは、ただ単に領域を取るだけ。
だから初期値なんて代入しません。

MNYU   DS   5

なんて入力しちゃうと、MNYU番地の領域を5つ取るってコトさ。
むにゅい番地が5畳出来たよーって考えればおk。
主記憶の仕組みまで説明するとめんどくさいので、0~65535語ある番地の
どっかに5語分領域を取るーって考えればいいかもね。
どうでもいいけどDSって、MoEで言う強化魔法70くらいの
ディバインシールドってスキルの略称なんだよね。
ROで言えばダブルストレイフィングの略称なんだよね。
弓鳥が3キャラ目に居たお兄さんには素敵な覚え方。
DSだけ恵まれすぎだと思います><
でもROって本鯖は3キャラしか作れないんだよね。
クルセ、WIZ、ケミたんで3キャラ埋まっちゃうじゃないか。
プンスカッ。
クルセとWIZとケミたんは俺専属のお人形さん。
神速クルセだけは誰にも譲りませんことよっ。
パラディンになったらLUCも入れて鎌も持てます。
更にLUC回避もあるから、更に避けます。
壁とは違うのだよ、壁とは。



・LD命令
メインメモリからジェネラルレジスタにデータをコピる命令。
↑で指定したYABOU番地のデータをGRに格納する時に便利。
でも先頭一つ分のデータしか取り出せないのよね。

・ST命令
ストア命令。
ジェネラルレジスタからメインメモリにデータをもってく命令。
LD命令の逆。






かなりはしょったけどこれでいいだろ。
何、わからんだと?
残念だったな、お兄さん説明するのは超絶苦手なのだ。はっはっは。
残念だったねぇ。





さて、前回のプログラムの行動をざっと説明しよう。
基本的にJISコードを理解してないとわけわかめなので、そっちをざっと見れば幸せだと思う。
お兄さん暗記が大嫌いだから、JISコードのジしか理解してないけど。


参考までにJISコード表をこちらに。





始めにデータを入力してこないと話しにならないわな。
ってコトで、データ入力を2件。
AとBって数字を入力してきます。



最初のLD SUBAコンボ*2で文字データの数値をコンピュータのわかるように
内部数値に置き換える。
だから数値データの0を引いたらいいんだよ。うん。
ごめん、ここらの仕組みを解説するのもちょっとめんどいから省く。



そして、変換した二つの数を加算する。
加算したら2桁になっているかどうか調べる為に、ループ処理を。
ラベルのROOPA~KETAITI一個↑の間の処理。
10以上だった場合、10の桁に1を加算して1桁目から10を引く。
それを1桁目が9以下になるまで続ける処理。
だからぐーるぐーるループするんだよ。



10の位の数と1の位の数が判明したら、また数値データに置き換えます。
ADDA ='0' の部分ね。
リテラル使わないとめんどくさいから、=?で代入しちまいます。
ああ、CASLⅡはここが素晴らしい。



変換した数値データを格納します。
10の位の数をREEI、1の位の数をREZWに格納します。
そして出力。
REEIの直下がREZWなので、出力文字数に2をセットしたら2桁表示されます。
これで完成。




ただこのプログラムには多少バグがあり、2桁にならない計算をしちゃうと
2桁目が文字化け起こしちゃうんだな。
回避策として、初期値を0にセットしておけば、01とか05とかで表示されるヨ。
もしくは、何も表示したくない場合は#0020を入れておくとか。
何で0020なのかはJISコード参照。












ざっと説明したけどわかってくれたかしら。
今度は気が向いたら、メインメモリの説明でもしてやろうと思います。
ぢぇねらるれじすたとセットで。
こんぶ茶がいいな。でもやっぱりダージリンティーがいいな。
ダージリンティーはぼくの旦那様。








2008.06.01(10:50)|プログラマにっきコメント(2)TOP↑
すっごいアセンブラ言語ですwww
ってかやっぱこうでもしないとメモリ消費抑えれんのかな><
ガバーレ♪
From: 乱 * 2008.06.02 12:29 * URL * [Edit] *  top↑

>へんたいまる
A:基本情報対策

んー
まあ、ここまでやったからこそ少しRubyをかじった人間から
徐々にプログラマの卵に昇格しつつあるんだy
内部まで見れるって思うと楽しくてしょうがないけd



まあ、うん
RGSSは命令が(CASLⅡに比べて)めっちゃくちゃ命令があるから色んな事が出来るけど
命令が少ない中で、本当に最小限の事すら
頭を捻ってやるしかない状況にならざるを得ないCASLⅡの方が楽しいよ。うん。
アセンブラ言語、古いけど、うん、いいと思うよ。





でもこれ、改造したらゲームが一本できそうと考える辺り、ぼくゲーヲタなんだろうか。
From: Dの中尉 * 2008.06.02 21:01 * URL * [Edit] *  top↑

名前:
コメントタイトル:
メールアドレス:
URL:
コメント:

パスワード:
管理人だけに表示:
管理者にだけ表示を許可
カテゴリー
最近の記事
せぶんすどらごん
アルカナこれくそん
 

saylusです。
斧使いです。
ふざけた装備の時は
支援仕様なので、
魔法ぶち込んでください。

さぽている
 

ローランですとも。

ブログでレベルアップ
リンク
最近のコメント
さいらすについて
おれの生態についての報告欄。

saylus

Author:saylus
【HN】
サイラス(saylus)
最近は浩介とも名乗ってます。

【ジョブ】
ニート。
病気療養中、とも言う。
とは言いつつも、ゲームシナリオを書き続けAIONをし続ける日々。
すごく・・・謎ニートです・・・。

【GID治療】
男ホル注射さぼってます。
理由は、お外に出ると一日中頭痛と吐き気が止まらないから。
生き残りたい。

【スペック】
生年月日:平成元年4月28日
年齢:今年で22才
性別:フツーの兄ちゃん
その他:条件、眼鏡等。但しAT車に限る。
身長:ちみっこい
体重:一ヶ月で10kg痩せた
性格:
自称、ただのにーちゃん
他称、悪人、変態、など様々である。

【好きなもの】
おっさんキャラ。特にFF7のシドとうたわれのクロウとFFTのダイスダークは別格。ゼノギアスのジェサイアとシタン先生も好き。
ガタイのいい男キャラ
パラディン/クルセイダー
ROの女プリースト系のスリット
及び、女教授のふんどし。
アルベール・カミュ作品全般
シャルルマーニュ伝説
エッダ、カレワラ、ケルト神話。
ゼノギアスとFF全般
ベルセルクとクレイモア
3と9と11と10-2,12はやった事が無い。
FFTのダイスダークはおれの兄。シドルファスは俺のパパン。
アルルゥとアグリアスたんとゼノギアスのマリアたんとマルーたんと雛苺はおれの嫁。
誰が何と言おうと、死んでもアルルゥと雛苺だけは誰にも渡さん。
チェスも好き。紅茶も愛してる。
アールグレイとダージリンとセイロンウバとアップルティーとカモミールティーは最高だ。

【嫌いなもの】
和風スイーツ(笑)ほぼ全て。きなことかもう大嫌い。
とろけるチーズ嫌い。でもピザのチーズはセーフ。
チーズハンバーグとかチーズバーガーとかはアウト。
後、SFモノの作品もあまり好きじゃない。
和風ファンタジーもあまり好きではないかな。
後、女性の立場を上げよう!って団体も嫌い。もう十分じゃねーか。

正直どちらかと言えば和食派。
肉より魚派。
揚げ物より煮物派。
東京で行ってみたい所は浅草。
旅行に行きたい所は京都。テラへ。
半年以内に叶う夢は甲斐性のある男になる事。
これから先の夢は子供を持つ事。
野望は生涯焼きそばとスパゲッティーとさばみそへの愛を貫く事。しいたけも大好きだよ。愛してるよしいたけ。

ブログ内検索
RSSフィード
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。