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.

}<br />

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

tmp_rel = x[i] == y[i];<br />

else // ‘gt’<br />

tmp_rel = greater_signed(sign_ext(x[i], 8),<br />

sign_ext(y[i], 8));<br />

if (tmp_rel)<br />

res[i] = 0xff;<br />

else<br />

res[i] = 0x00;<br />

}<br />

GR[r1 ] = concatenate8(res[7], res[6], res[5], res[4],<br />

res[3], res[2], res[1], res[0]);<br />

} else if (two_byte_form) { // two-byte elements<br />

x[0] = GR[r2 ]{15:0}; y[0] = GR[r3 ]{15:0};<br />

x[1] = GR[r2 ]{31:16}; y[1] = GR[r3 ]{31:16};<br />

x[2] = GR[r2 ]{47:32}; y[2] = GR[r3 ]{47:32};<br />

x[3] = GR[r2 ]{63:48}; y[3] = GR[r3 ]{63:48};<br />

for (i = 0; i < 4; i++) {<br />

if (prel == ‘eq’)<br />

tmp_rel = x[i] == y[i];<br />

else // ‘gt’<br />

tmp_rel = greater_signed(sign_ext(x[i], 16),<br />

sign_ext(y[i], 16));<br />

if (tmp_rel)<br />

res[i] = 0xffff;<br />

else<br />

res[i] = 0x0000;<br />

}<br />

GR[r1 ] = concatenate4(res[3], res[2], res[1], res[0]);<br />

} else { // four-byte elements<br />

x[0] = GR[r2 ]{31:0}; y[0] = GR[r3 ]{31:0};<br />

x[1] = GR[r2 ]{63:32}; y[1] = GR[r3 ]{63:32};<br />

for (i = 0; i < 2; i++) {<br />

if (prel == ‘eq’)<br />

tmp_rel = x[i] == y[i];<br />

else // ‘gt’<br />

tmp_rel = greater_signed(sign_ext(x[i], 32),<br />

sign_ext(y[i], 32));<br />

if (tmp_rel)<br />

res[i] = 0xffffffff;<br />

else<br />

res[i] = 0x00000000;<br />

}<br />

GR[r 1] = concatenate2(res[1], res[0]);<br />

}<br />

GR[r 1 ].nat = GR[r 2 ].nat || GR[r 3 ].nat;<br />

pcmp<br />

3:186 第 3 巻 : 命令リファレンス

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!