x86 vs x64 - Perché a 32 bit viene chiamato x86? [chiuso]


45

Presumibilmente il x86 fu chiamato così perché le macchine usavano processori 80386 e 80486 . È corretto?

È questo il modo giusto di fare riferimento a macchine a 32 e 64 bit?



Voglio ricodificare questo tag ma non riesco a pensare a un buon tag. Questa è una domanda super utente?
Matt Ellen,

86x = 2 ^ 3 & 3x2, ovviamente, come puoi vedere, a 32 bit correlati! : p
Murta,

Nel contesto che stai chiedendo, x64 non si trova di fronte a x86, ma si trova accanto ad esso. È x86-64, come è x86-32 (attualmente chiamato IA-32)
cnom

Risposte:


61

Tecnicamente x86 si riferisce semplicemente a una famiglia di processori e al set di istruzioni che usano tutti. In realtà non dice nulla di specifico sulle dimensioni dei dati.

x86 è iniziato come set di istruzioni a 16 bit per processori a 16 bit (i processori 8086 e 8088), quindi è stato esteso a un set di istruzioni a 32 bit per processori a 32 bit (80386 e 80486) e ora è stato esteso a un'istruzione a 64 bit impostata per processori a 64 bit. Una volta era scritto come 80x86 per riflettere il valore che cambiava nel mezzo dei numeri del modello di chip, ma da qualche parte lungo la linea l'80 nella parte anteriore è stato lasciato cadere, lasciando solo x86.

Dai la colpa al Pentium e alla sua progenie per aver cambiato il modo in cui i processori sono stati nominati e commercializzati, anche se tutti i processori più recenti che utilizzano il set di istruzioni x86 di Intel sono ancora indicati come compatibili x86, i386 o i686 (il che significa che usano tutti estensioni dell'originale 8086 set di istruzioni).

x64 è davvero l'uomo strano qui. Il primo nome per l'estensione a 64 bit del set x86 era chiamato x86-64. In seguito è stato nominato AMD64 (perché in origine AMD aveva creato l'estensione a 64 bit). Intel ha concesso in licenza il set di istruzioni a 64 bit e ha nominato la loro versione EM64T. Entrambi i set di istruzioni e i processori che li utilizzano sono ancora considerati x86.

Fonte (i): http://en.wikipedia.org/wiki/IA-32 - IA-32, architettura Intel a 32 bit. http://it.wikipedia.org/wiki/X86-64 - Leggi di più su x86-64 qui.


7
+1 per aver effettivamente menzionato la fonte della confusione - x64 - che è una scorciatoia per x86-64.
Allon Guralnek,

Solo per rendere le cose davvero confuse, Intel ha chiamato la sua implementazione x64-64 IA-32e ad un certo punto; e x86-64 è stato anche chiamato IA-64t, anche se IA-64 è un set di istruzioni a 64 bit completamente diverso da Intel (ora comunemente noto come Itanium).
Gilles 'SO- smetti di essere malvagio' il

2
Intel passa al nome Pentium anziché al 586 pianificato quando un giudice ha stabilito che non è possibile proteggere un numero.
Jim C

mentre si esegue la programmazione C ++ se si esegue il clcomando sul prompt dei comandi di Visual Studio, viene fornito il seguente output - Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01 for 80x86. Guarda il testo finale nell'output del comando :-)
RBT

12

Sì, è corretto :

Il termine x86 si riferisce a una famiglia di architetture di set di istruzioni [2] basata su Intel 8086. L'8086 è stato lanciato nel 1978 come estensione completamente a 16 bit dei primi microprocessori basati su Intel a 8 bit e ha anche introdotto la segmentazione per superare il 16- bit affrontando la barriera dei chip precedenti. Il termine x86 deriva dal fatto che i primi successori dell'8086 avevano anche nomi che terminano con "86".

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.