あなたは
人目のアセンブラの受講生です。 |
アセンブラ入門内検索
アセンブラトップ
0. はじめに
1. 基礎
1. レジスタとは
2. セグメントとは
2. MOV命令
1. MOV命令
2. コンパイル
3. 即値の転送
4. メモリーへの転送
5. データ定義疑似命令
6. 練習問題
3. 算術演算
1. 符号なし演算と符号付き演算
2. 足し算
3. 練習問題
4. フラグ
5. 引き算
6. かけ算
7. わり算
8. INC,DEC
4. 分岐
1. 無条件分離
2. 比較命令
3. 条件分離
4. 練習問題
5. ループ
6. サブルーチン
7. スタックとは
8. PUSH,POP
9. 練習問題
5. 論理演算
1. AND命令
2. OR命令
3. XOR命令
4. NOT命令
5. NEG命令
6. TEST命令
7. 練習問題
6. シフト演算
1. シフト
2. ローテート
3. 練習問題1
4. 練習問題2
7. ストリング命令
1. ストリング命令とは
2. MOVS?
3. REP
4. DFの設定
5. LODS?
6. STOS?
7. SCAS?
8. CMPS?
9 .練習問題
8. 入出力
1. 概要
2. IN命令
3. OUT命令
4. INS,OUTS命令
9. その他
1. LEA
2. XCHG
3. NOP
10. 割り込み
1. 割り込みとは
2. ソフトウェア割り込み
3. ハードウェア割り込み
4. 割り込みベクター
5. 割り込み処理の作り方
6. 練習問題
11. レジスタの型変換(キャスト)
12. 卒業試験
1. 卒業試験
2. 画像データの格納形式
3. インラインアセンブラ
4. ネガポジ反転
5. 明るくする、暗くする
6. グレースケール
7. 二値化
8. 上下反転、左右反転
9. 4分割
10. モザイク
11. シャープ
12. ぼかし
13. エンボス
14. ディザ拡散
15. 鉛筆を置いてください
13. 終わりに
文字コード
アセンブラ 〜MS-DOSの世界〜
このページの先頭に戻る
トップページに戻る
このページの先頭に戻る
トップページに戻る
|
前ページへ :
トップへ :
次ページへ
- 3-7.わり算
DIV SRC
動作:符号なし整数の除算
SRC = 1byte : AX ÷ SRC の余り→AH、商→AL
SRC = 1word : DX:AX ÷ SRC の余り→DX、商→AX
SRC = 1dword : EDX:EAX ÷ SRC の余り→EDX、商→EAX
影響を受けるフラグ : OF,SF,ZF,AF,CF,PF
SRC :レジスタ、メモリー
|
IDIV SRC
動作:符号付き整数の除算
SRC = 1byte : AX ÷ SRC の余り→AH、商→AL
SRC = 1word : DX:AX ÷ SRC の余り→DX、商→AX
SRC = 1dword : EDX:EAX ÷ SRC の余り→EDX、商→EAX
影響を受けるフラグ : OF,SF,ZF,AF,CF,PF
SRC :レジスタ、メモリー
|
わり算には注意が2つ必要となる。電卓で「1÷0」と入力するとエラーになる。
同様に0で割るとエラーになる。高級言語の場合は0で割るとエラーを表示して
プログラムを終了するようにコンパイラが勝手にしてくれる場合もあるが、
アセンブラの場合、通常はOSに処理が移ってしまいどうなるかわからない。
2つめは大きい数を小さい数で割ってはいけない。割る数が1byteの場合、割られる
数は1word(=2byte)の数である。そしてその商と余りは1byteである。したがって、
2000h÷2=1000h余り0であるが、商の1000hは1byteには収まりきらない。この場合も
エラーが起こり、OSに処理が移ってしまい、その後どうなるかわからない。
このようなエラーを「例外」と呼び、OSが用意している「例外処理」に処理が
移行される。例外については後述する。
- 0でわり算をしてはならない。
- 商がレジスタに収まるように注意しなければならない
|
前ページへ :
トップへ :
次ページへ
|