コンテキスト:アセンブラを記述する。ツールチェーンをサポートせずに、ゼロからコードを書くとします。あなたはあなたの前にコンピュータがあるだけで、あなたはCPUのドキュメントを手に入れます。過去に戻って。アセンブラ - 10進数のアセンブリでバイナリを書き込む
バイナリで書く必要がある場合、どのように最下位レベルでビットを整形するかをどのように知っていますか?
たとえば、バイナリ・イミディエートに変換する#253(2^32までの任意の値で、16進数でもかまいません)。毎回右から左へバイトごとにパーズする必要がありますか?毎回10(または16進数で16)を掛けて)毎回累積レジスタに結果を格納する必要がありますか?
アセンブラはビットストリームを形成するために最低レベルで何をしますか? (追加とシフト)?
アセンブラは、ソースコードを出力フォーマットに変換するだけです(「ちょっと」はここでは単純化されています)ので、あなたの本当の質問は何ですか?文字列を数値に変換するには?それは基本的な作業です。はい、基本的には加算して乗算することで達成されます。オーバフロー、文字セット、および文字コードのエンコードのような注意を払う –
@MargaretBloom私はアセンブラを書いています。私の主な関心事は、効率的なビットストリームを書くことです。私はジャンプテーブルについても考えていましたし、それをスピードアップするための16進変換も考えました。最適化のために小数は非常に貧弱です。 – Kroma
私はあなたに "コンパイルビルドのチュートリアル"のためのGoogleを提案したい、あなたに必要なものを教える非常に良いチュートリアルがたくさんあります。値をデコードするステートマシンアセンブラは何らかのコンパイラであり、アセンブリコードをマシンコード – Tommylee2k