• ベストアンサー

nasmにおけるレジスタの指定

自分はlinuxでアセンブリ言語の学習をしている者です。 32bit 汎用レジスタ eax の下位16bit の 上位8bit と 下位8bit の指定はそれぞれ ・ah ・al だと思いますが。 上位16bit における 上位8bit と 下位8bit の指定方法、又 eaxレジスタの 下位16bit と 上位16bit の指定方法がわかりません。 稚拙な質問で大変恐縮ですが、ご教授の程お願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • rinkun
  • ベストアンサー率44% (706/1571)
回答No.1

> 上位16bit における 上位8bit と 下位8bit の指定方法、又 eaxレジスタの 下位16bit と 上位16bit の指定方法がわかりません。 これはありません。CPU自体にそんな機能がありませんから。 ahやalによる8bitアクセスができるのは8086CPUにそのようなレジスタアクセス機能があるからです。 上位ワードに対する同様の機能はありませんし、そもそもi386系以外の32bitCPUではほとんど8bitアクセス自体ができませんので、そういうことはビットマスクやシフトを活用して実現してください。

_localhsot
質問者

お礼

回答をくださりありがとうございます。 質問を通して上位ワードに対する理解、処理方法を得る事が出来ました。 ありがとうございました。

関連するQ&A