質問 |
||
| 質問者:seven_star | アセンブリ言語について | |
|---|---|---|
困り度:
|
今の時代にアセンブリ言語について質問することをを許しください。 今大学生ですが、どうしてもアセンブリを理解して基礎を固めたいのです。 質問は下に示すページです。 http://wisdom.sakura.ne.jp/programming/asm/assembly22.html ここの最初のdos画面について。 レジスタを使わずに、メモリ間転送を連続したストリング操作で行っていますが、この例だと最初に "Kitty on your lap" という文字をオフセット200から設定しています。 そして、この文字列をオフセット300にコピーするようプログラムを組んでいますが、レジスタCX(カウントレジスタ)に11を設定しています。 CXに設定された回数コピーを行うため、このプログラムでは11回のストリング操作によるコピーを行っていると理解していますが、ここで疑問なのは"Kitty on your lap"がどう考えても11文字ではありません。 そして、疑問が消えないまま実行してみると正確に動作しました。(コピーされました。) なぜ11を設定し、正確に動作するのかを教えていただけると幸いです。よろしくお願いいたします。 |
|
質問投稿日時:08/04/10 01:31 質問番号:3936572 |
||
回答良回答10pt |
|
| 回答者:auty | 11h == 11HEX == ?(10進数) |
|---|---|
| 種類:アドバイス どんな人:経験者 自信:参考意見 |
|
| |
回答日時:08/04/10 01:50 回答番号:No.2 |
|
| この回答へのお礼 | この回答にお礼をつける(質問者のみ) |
回答良回答20pt |
|
| 回答者:shimix | リンク先は見ていませんが(汗 >レジスタCX(カウントレジスタ)に11を設定しています。 11は16進でしょう?10進の「17」を意味していると思います。 |
|---|---|
| 種類:アドバイス どんな人:経験者 自信:参考意見 |
|
| |
回答日時:08/04/10 01:48 回答番号:No.1 |
|
| この回答へのお礼 | この回答にお礼をつける(質問者のみ) |