16.02.2013 Aufrufe

24531904_j

24531904_j

24531904_j

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

操作 : if (PR[qp]) {<br />

if (p1 == p2)<br />

illegal_operation_fault();<br />

tmp_nat = (register_form ? GR[r 2 ].nat : 0) || GR[r 3 ].nat;<br />

if (register_form)<br />

tmp_src = GR[r 2 ];<br />

else if (imm8_form)<br />

tmp_src = sign_ext(imm 8 , 8);<br />

else // parallel_inequality_form<br />

tmp_src = 0;<br />

if (crel == ‘eq’) tmp_rel = tmp_src == GR[r 3 ];<br />

else if (crel == ‘ne’) tmp_rel = tmp_src != GR[r 3 ];<br />

else if (crel == ‘lt’) tmp_rel = lesser_signed(tmp_src, GR[r 3 ]);<br />

else if (crel == ‘le’) tmp_rel = lesser_equal_signed(tmp_src, GR[r 3 ]);<br />

else if (crel == ‘gt’) tmp_rel = greater_signed(tmp_src, GR[r 3 ]);<br />

else if (crel == ‘ge’) tmp_rel = greater_equal_signed(tmp_src, GR[r 3 ]);<br />

else if (crel == ‘ltu’) tmp_rel = lesser(tmp_src, GR[r 3 ]);<br />

else if (crel == ‘leu’) tmp_rel = lesser_equal(tmp_src, GR[r 3 ]);<br />

else if (crel == ‘gtu’) tmp_rel = greater(tmp_src, GR[r 3 ]);<br />

else tmp_rel = greater_equal(tmp_src, GR[r 3 ]);//‘geu’<br />

switch (ctype) {<br />

case ‘and’: // and-type compare<br />

if (tmp_nat || !tmp_rel) {<br />

PR[p 1 ] = 0;<br />

PR[p 2 ] = 0;<br />

}<br />

break;<br />

case ‘or’: // or-type compare<br />

if (!tmp_nat && tmp_rel) {<br />

PR[p 1 ] = 1;<br />

PR[p 2] = 1;<br />

}<br />

break;<br />

case ‘or.andcm’: // or.andcm-type compare<br />

if (!tmp_nat && tmp_rel) {<br />

PR[p 1 ] = 1;<br />

PR[p 2] = 0;<br />

}<br />

break;<br />

case ‘unc’: // unc-type compare<br />

default: // normal compare<br />

if (tmp_nat) {<br />

PR[p 1] = 0;<br />

PR[p 2 ] = 0;<br />

} else {<br />

PR[p 1] = tmp_rel;<br />

PR[p 2 ] = !tmp_rel;<br />

}<br />

break;<br />

}<br />

} else {<br />

if (ctype == ‘unc’) {<br />

if (p1 == p2)<br />

illegal_operation_fault();<br />

PR[p 1] = 0;<br />

PR[p 2 ] = 0;<br />

}<br />

}<br />

割り込み : 無効操作フ ォ ル ト<br />

3:36 第 3 巻 : 命令リファレンス<br />

cmp

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!