アセンブラリストをおってデバッグしたい – プログラミング – Home

アセンブラリストをおってデバッグしたい
 
通知
すべてクリア

[解決済] アセンブラリストをおってデバッグしたい


ガラ
 ガラ
(@ガラ)
ゲスト
結合: 20年前
投稿: 201
Topic starter  

XP VC++6.0
アセンブラデバッグできるようになりたいのですが、
いい、書籍をご紹介していただけませんでしょうか?
(いまは、ほとんど、わかりません。486系のCPUの構造は、勉強しました。)

自分でさがしたかぎりでは、
「はじめて読むMASM ソフトウェア環境のからくりを学ぶ」
というのがあり、題名は、ほぼ私の要求に該当するものなのですが、
内容は、ぜんぜんわかりません。


引用未解決
トピックタグ
tetrapod
 tetrapod
(@tetrapod)
ゲスト
結合: 21年前
投稿: 830
 

えーと・・・
なぜに今時アセンブラが必要ですか?まったく持ってイランと思うけど。

んで、何がどこまでわかって、何がどこまでわからん?
入門レベルなのか中級なのか?
そーいう話がないと本って薦められんのですけど。


返信引用
ぬふや
 ぬふや
(@ぬふや)
ゲスト
結合: 18年前
投稿: 34
 

VCのデバッガはソースコード無しで使うにはあまり向かないので、VC以外のデ
バッガ使ったほうが楽な場合が結構ある。
でも、そうするとVCのラウンジで聞く話ではないかもしれない。

とりあえず、Intelのサイトから「IA-32インテル アーキテクチャ・ソフトウェア・デベ
ロッパーズ・マニュアル」の「中巻:命令セット・リファレンス(資料番号
245471J)」をダウンロードして下さい。

後は適当にアセンブリ言語のコードを眺めてれば色々判ると思います。

アセンブリコードはVCのコンパイル時に出力させる方法、オブジェクトファイルなど
からVCの付属ツールに出力させる方法、VCのデバッガの混合モード、その他の
ディスアセンブラ、その他のデバッガ、にて入手できます。


返信引用
ITO
 ITO
(@ITO)
ゲスト
結合: 22年前
投稿: 1235
 

書籍としては、
  「始めて読む 8086」アスキ-
   (売ってなかったら古本屋もあたってみてください)

なぜ、8086かというと、この本はインテルのアセンブラの基礎を詳しく書いてあるの
思います。

ねふやさんが薦めている、
>「IA-32インテル アーキテクチャ・ソフトウェア・デベ
>ロッパーズ・マニュアル」の「中巻:命令セット・リファレンス(資料番号
> 245471J)」

を読むためにも先に読んでおくといいと思います。


返信引用
暇人
 暇人
(@暇人)
ゲスト
結合: 22年前
投稿: 19
 

IA-32~は最初のスレッドでも勧められてるんだけどね…
http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200702/07020059.txt


返信引用
ガラ
 ガラ
(@ガラ)
ゲスト
結合: 20年前
投稿: 201
Topic starter  

 ITOさんありがとうございます。はじめて読む8086、当たらせてもらいます。

 暇人 さんのおっしあるとおり、命令セットについては、以前におすすめいただいたも
のがあります。しかし、命令セットだけでは、よくわかりません。

 tetrapodさん、アセンブラをよめる人とそうでない人では、デバッグ力がかなりちが
うとおもいます。

 ぬふや さん、ありがとうございます。VCでは、strlen()など、アセンブラソース(逆
アセした結果ではなく)が表示される場合も多々あるので、デバッグ力を養う意味で読
めるようになっておきたいのです。


返信引用
tetrapod
 tetrapod
(@tetrapod)
ゲスト
結合: 21年前
投稿: 830
 

逆アセンブラ表示を見てデバッグの参考になる程度まで力をつけるには
命令セットの理解などは有る意味当たり前すぎの話。
コンパイラのABI仕様を理解するほうが重要だったりしますな。

スタックフレームって何 (EBP の役目とは) とか
__stdcall と __cdecl の違いとか (引数の実装方式とか)
レジスタ保存則とか

C/C++ 初心者ならそんな突っ込みすぎなところに力を割くより先に
やるべき/身に着けるべきことがたくさんあると思う。

アセンブラがわかっていればポインタの理解で躓かないとかあるけどねー
それだったら CASL で十分だったりするので
超難解な x86 をわざわざ学ぶ必要は無いと思う
アセンブラを実用するにはむしろ H8 とかのほうが良いと思うし。


返信引用
ガラ
 ガラ
(@ガラ)
ゲスト
結合: 20年前
投稿: 201
Topic starter  

tetrapod さんへ
わたしは、C++初心者では、ありません。
ポインターなどおちゃのこさいさいいです。
あまり、かってな自分の想像でものをいわないでください。
なにをわけのわからないことをいってるのかは、知りませんが、
もうすこし、他人の状況を考えるのも必要だと思います。
それに、逆アセした結果をデバッグするのではありません。
VC++に添付のアセンブラソースがあるのです。
私にアセンブラが必要かどうか、あなたがきめることではありません。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました