[過去ログ] スレ立てるまでもない質問はここで 158匹目 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
93(2): 2021/11/07(日)18:18 ID:tCSI0rJO(1) AAS
可読性(≒保守性)の良いプログラムを書きましょう・・・とは言われるけど
例えばx86命令のデコーダを可読性良く書くにはどうすれば良いのだろうか?
それは極端だとしても
・可変長である
・読み始めに読み込むべきサイズが不明
みたいな入力を想定しただけでも条件分岐と入力の読み込みだらけになって
スパゲッティ化してしまうような
97: 93 2021/11/07(日)21:31 ID:olvIiluo(1) AAS
1バイト目 命令列を示すプレフィックスの判別
2バイト目 ショート命令/標準命令の判別、ショート命令のデコード
3バイト目 標準命令のデコード or ショート命令のオペランドのデコード(Option)
この時点ですでにifのネストが3段
というか昨日から今日にかけて書いていたけど動いた物のすでにelse ifだらけでぐちゃぐちゃ
命令の追加とかしたら動かなくなりそうな感がバリバリする
>>94
関数に分離して別スコープになると共有するリソースのやりとりをどうするかという問題がでてくる
グローバル変数を使う?ポイント渡しにする?どちらもあまり見やすくないような
98(1): 2021/11/07(日)22:55 ID:KgxySftM(1) AAS
>>93
思い付きなんで単なる意見として聞いてくれ
問題の構造として構文解析と同じ課題に見えなくもない
ならば数値はトークンとして処理する構文解析木が出来ればいいのでは?
ならばBNFを書いて、実際の処理はアクションに書いて、分離して管理できるのではないか?
その例以外には適用できるかわからない案だけど、どうしようもなく判断文が続くなら構文木とみなすのも一案として検討に値しないかなと
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.042s