MASM32の使い方 (1.5)
ポインタの型宣言
①での演算プログラムでポインタ(メモリのアドレス)の型指定をdw(WORD(16bit))にするとアセンブリは出来るが異常終了する。
修正すると正常に動作する。
レジスタは32bitなので、レジスタに下位だけコピーされているのでオーバーフローしているかもと思いレジスタを初期化した。
これで正常になるかと思ったが・・・
異常終了する。ddで定義すれば良いのだが dw(DWORD)なのに dd と書かないといけないのは混乱しそう。
add命令について
add命令は オペランドのうち一つしかポインタ(メモリアドレスをしめすラベル)を使えない。
この場合、エラーがでてアセンブルできない。
プロジージャー(関数)の使い方
コードの一部を proc - endp で囲むとプロシージャ(手続き)として関数みたいに使える。プロシージャから戻るには ret が必要。
LOCAL 変数名(ラベル):型宣言 とするとローカル変数みたいに使える。
part①の補足はここまで。