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 />

check_target_register(r 1);<br />

if (one_byte_form) { // one-byte elements<br />

x[0] = GR[r 2]{7:0}; y[0] = GR[r 3]{7:0};<br />

x[1] = GR[r 2 ]{15:8}; y[1] = GR[r 3 ]{15:8};<br />

x[2] = GR[r 2 ]{23:16}; y[2] = GR[r 3 ]{23:16};<br />

x[3] = GR[r 2 ]{31:24}; y[3] = GR[r 3 ]{31:24};<br />

x[4] = GR[r 2 ]{39:32}; y[4] = GR[r 3 ]{39:32};<br />

x[5] = GR[r 2 ]{47:40}; y[5] = GR[r 3 ]{47:40};<br />

x[6] = GR[r 2 ]{55:48}; y[6] = GR[r 3 ]{55:48};<br />

x[7] = GR[r 2 ]{63:56}; y[7] = GR[r 3 ]{63:56};<br />

if (sss_saturation_form) {<br />

max = sign_ext(0x7f, 8);<br />

min = sign_ext(0x80, 8);<br />

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

temp[i] = sign_ext(x[i], 8) + sign_ext(y[i], 8);<br />

}<br />

} else if (uus_saturation_form) {<br />

max = 0xff;<br />

min = 0x00;<br />

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

temp[i] = zero_ext(x[i], 8) + sign_ext(y[i], 8);<br />

}<br />

} else if (uuu_saturation_form) {<br />

max = 0xff;<br />

min = 0x00;<br />

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

temp[i] = zero_ext(x[i], 8) + zero_ext(y[i], 8);<br />

}<br />

} else { // modulo_form<br />

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

temp[i] = zero_ext(x[i], 8) + zero_ext(y[i], 8);<br />

}<br />

}<br />

if (sss_saturation_form || uus_saturation_form ||<br />

uuu_saturation_form) {<br />

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

if (temp[i] > max)<br />

temp[i] = max;<br />

}<br />

if (temp[i] < min)<br />

temp[i] = min;<br />

}<br />

GR[r 1 ] = concatenate8(temp[7], temp[6], temp[5], temp[4],<br />

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

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

x[0] = GR[r 2]{15:0}; y[0] = GR[r 3]{15:0};<br />

x[1] = GR[r 2 ]{31:16}; y[1] = GR[r 3 ]{31:16};<br />

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

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

if (sss_saturation_form) {<br />

max = sign_ext(0x7fff, 16);<br />

min = sign_ext(0x8000, 16);<br />

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

padd

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!