root/doc_inner/gnu_global/S/2470.html

/* [<][>][^][v][top][bottom][index][help] */
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
<html xmlns='http://www.w3.org/1999/xhtml'>
<head>
<title>as/misc/divl0.casl</title>
<meta name='robots' content='noindex,nofollow' />
<meta name='generator' content='GLOBAL-6.6.5' />
<meta http-equiv='Content-Style-Type' content='text/css' />
<link rel='stylesheet' type='text/css' href='../style.css' />
</head>
<body>
<a id='TOP' name='TOP'></a><h2 class='header'><a href='../mains.html'>root</a>/<a href='../files/2861.html'>as</a>/<a href='../files/2910.html'>misc</a>/divl0.casl</h2>
<em class='comment'>/* [&lt;][&gt;][^][v][top]<a href='#BOTTOM'>[bottom]</a><a href='../mains.html'>[index]</a><a href='../help.html'>[help]</a> */</em>
<hr />
<pre>
<a id='L1' name='L1'></a>   1 ;;; 0〜65535の範囲にある正数の割算を行う
<a id='L2' name='L2'></a>   2 ;;; 入力 GR1:被除数 GR2:除数
<a id='L3' name='L3'></a>   3 ;;; 出力 GR0:商 GR3:剰余
<a id='L4' name='L4'></a>   4 ;;; GR2が0の場合は、GR0、GR3とも0になり、オーバーフロー
<a id='L5' name='L5'></a>   5 DIVL0   START
<a id='L6' name='L6'></a>   6         PUSH    0,GR1
<a id='L7' name='L7'></a>   7         AND     GR2,GR2         ; (GR2 = 0)の場合、DIVZEROへジャンプ
<a id='L8' name='L8'></a>   8         JZE     DIVZERO         ; ↓
<a id='L9' name='L9'></a>   9         LAD     GR0,0           ; GR0を初期化
<a id='L10' name='L10'></a>  10         LD      GR3,GR1         ; GR3 &lt;- GR1
<a id='L11' name='L11'></a>  11 LOOP    CPL     GR3,GR2         ; ループ先頭。(GR3 &lt; GR2)の場合、終了
<a id='L12' name='L12'></a>  12         JMI     FIN             ; ↓
<a id='L13' name='L13'></a>  13         SUBL    GR3,GR2         ; GR3 &lt;- GR3 - GR2
<a id='L14' name='L14'></a>  14         ADDL    GR0,ONE         ; ↓
<a id='L15' name='L15'></a>  15         JUMP    LOOP            ; ループ終端
<a id='L16' name='L16'></a>  16 DIVZERO LAD     GR3,#8000       ; 強制的にオーバーフローを発生させ、GR3 &lt;- 0
<a id='L17' name='L17'></a>  17         SLL     GR3,1           ; ↓
<a id='L18' name='L18'></a>  18         JUMP    FIN             ; FIN へジャンプ
<a id='L19' name='L19'></a>  19 FIN     POP     GR1
<a id='L20' name='L20'></a>  20         RET
<a id='L21' name='L21'></a>  21 ONE     DC      1
<a id='L22' name='L22'></a>  22         END
</pre>
<hr />
<a id='BOTTOM' name='BOTTOM'></a>
<em class='comment'>/* [&lt;][&gt;][^][v]<a href='#TOP'>[top]</a>[bottom]<a href='../mains.html'>[index]</a><a href='../help.html'>[help]</a> */</em>
</body>
</html>

/* [<][>][^][v][top][bottom][index][help] */