Kezdőoldal » Számítástechnika » Programozás » Attól hogy 64 biten címzem a...

Attól hogy 64 biten címzem a memóriát, hogyan lesz gyorsabb a rendszer a 32 biteshez képest?

Figyelt kérdés

asszinkron átvitelnél meg főleg, ha a keretben kétszer hosszabb a címző blokk...


még mindig nem értem ezt a 64 bites őrületet!


2011. ápr. 6. 16:30
 1/8 anonim ***** válasza:
Sehogy. Nem ettől lesz gyorsabb. Hanem attól, hogy a processzor általános regiszterei nem 32 hanem 64 bitesek, ezáltal elvileg kétszer annyi adatot tud ugyanannyi idő alatt feldolgozni. Hogy ez a gyakorlatban miért nem kétszer annyi, abba most ne menjünk bele, lusta vagyok leírni :D
2011. ápr. 6. 16:35
Hasznos számodra ez a válasz?
 2/8 anonim ***** válasza:
Lényegében, ha 64 bitesen címzed a memóriát, akkor több, mint 4GB RAM-ot fel tud ismerni, sebességbeli különbség nemigen van.
2011. ápr. 6. 16:36
Hasznos számodra ez a válasz?
 3/8 anonim ***** válasza:

Nem teljesen értem amit leírsz. Kétszer hosszabb a címző blokk? 64 bites CPU az amikor a regiszterek, adat és a címbusz is 64 bites.

Ha jól optimalizálsz akkor egy órajel alatt a 64bites regiszterben 2db 32 bites adatot értékelhetsz ki pl. Itt máris 200%os a gyorsulás.

Nagyobb memóriát használhatsz vele ami nyilván a gép egészének növeli a teljesítményét.

Vagy rosszul értettem a kérdést?

2011. ápr. 7. 13:50
Hasznos számodra ez a válasz?
 4/8 A kérdező kommentje:
ezzel csak az a baj, hogy a processzor EGYIDŐBEN egy darab regiszterrel végezhet aritmetikai műveletet, olyan nem létezik, hogy több regisztert összevon egybe!
2011. ápr. 7. 15:19
 5/8 A kérdező kommentje:

mellesleg ha úgy van, ahogy írod, mit csinálsz köztes átvitelnél (carry)?


egyik regiszter túlcsordul a másikba, vagy hogyan gondolod (MSB-LSB)?

2011. ápr. 7. 15:21
 6/8 anonim ***** válasza:

Tegyük fel, hogy van két 64 bites adatod, amiket össze akarsz adni. 32 bites regiszterekkel csak két lépésben tudod, összeadod alsó 32 biteket, elrakod a helyére, aztán az átvitelt + a felső 32 biteket. 64 bites regiszterekben meg fogod, és összeadod egy lépésben.

A szélesebb címsín meg azért jobb, mert a nagyobb fizikai memóriába a virtuális memóriából többet tud benntartani (vagy akár az egészet).

2011. ápr. 8. 16:46
Hasznos számodra ez a válasz?
 7/8 anonim ***** válasza:

az x86-64 típusú procik egész sok mindent támogatnak, pl: sse,sse2, sse3 (egyszerre több (2-4) adaton való műveletvégzés), és több általános célú regiszter is van: az újak r8-r15..

Ezért a függvények közti paraméterátadás nem a lassú veremben történik, hanem regiszterekben általában... a veremnek nem mindig használják már az rbp bázis pointerét se: kevesebb művelet, több szabad regiszter

2011. ápr. 10. 22:31
Hasznos számodra ez a válasz?
 8/8 anonim ***** válasza:

Hmm... Ezt direkt csinálod? Van bármilyen informatikai alapképzésed? Olvasás szövegértés megy?


"ezzel csak az a baj, hogy a processzor EGYIDŐBEN egy darab regiszterrel végezhet aritmetikai műveletet, olyan nem létezik, hogy több regisztert összevon egybe!"


SIMD: Single instruction multiple data.

És 1 regiszterről beszéltem amiben 2 32 bites adat van.


"mit csinálsz köztes átvitelnél (carry)?"

Ennek mi köze a témához? A köztes átvitel az auxilary carry flag (AF)azt jelzi hogy a legalső négy bitről (a nibbleről) történt e átvitel.


MSB LSB itt hogyan jött? Az hogy milyen irányban írja a számot nekem abszolúte nem lényeges. Nem írok assemblyben programot, és nem tervezek motorola 6800-ra vagy intel 8086-ra progit írni hogy a byte ordert is figyelnem kelljen.


Egyéb kérdés, észrevétel, hozzászólás?

2011. ápr. 11. 10:50
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!