Вопрос: Почему x86 представляет 32bit, когда x64 представляет 64 бит? [закрыто]


Мой вопрос в том, почему сокращение для 32-разрядного x86, когда сокращение для 64-битного x64?

Я предполагаю, что это имеет какое-то отношение к дням 386 и 486, когда 32-разрядные процессоры закончились в 86, но, конечно же, были процессоры, которые не заканчивались на 86 и все еще были 32-битными?

Кто-нибудь знает историю этого или может направить меня к хорошему источнику информации?

благодаря


82
2017-10-06 14:48


Источник


всегда хотел знать это +1 для бесценного любопытства! - Gabriel Guimarães
Я просто спросил себя сегодня утром! - Sean Howat
Я думаю, что полный термин не x64, а x86_64 - Kedare
IMHO, «x86» не означает (и никогда не означало) только любую общую 32-битную архитектуру. Даниэль ниже дает историю. Есть много других 32-битных процессоров, которые одновременно являются (или старше) 80386, и многие из них по-прежнему остаются на рынке и сегодня. Семейство 68000 (используется в оригинальном Macintosh) намного старше, чем 8086, например. Утверждение PowerPC о славе, когда новая была сильной поддержкой эмуляции как для x86, так и для 68K. ARM 32-бит, более современный и довольно распространенный. - RBerteig
Я не вижу его как x64, по крайней мере, я не пишу его таким образом. Я пишу его как 32b и 64b, соответственно. - vol7ron


Ответы:


Вероятно, потому, что линия x86 стала синонимом 32-битных процессоров в течение довольно долгого времени, в то время как x64 была специально обозначением для 64-битной версии, так как приложения и операционные системы были переделаны, и теперь есть программные приложения, для которых требуется 64-битное обозначение для запуска (например, какое-то программное обеспечение VM).

Другими словами, это больше маркетинга, чем технологии по этой причине.


32
2017-10-06 14:53



x86 происходит от 8086, 286, 386, 486, 586 и т. д. Это могло бы быть так же легко «* 86», - gWaldo
И поскольку x86 возникла с 8086, я никогда не мог понять, почему она всегда связана с 32 битами. Насколько я помню, 8086 был 16-разрядным процессором, который использовал двойные регистры для включения 32-разрядной адресации памяти. В то время Intel была далеко не лидером в этой области. BTW @gWaldo, вы оставили 80186. - John Gardeniers
Совпадение. Из Википедии: «И архитектура, и физический чип были разработаны довольно быстро небольшой группой людей и используют те же основные элементы микроархитектуры и методы физической реализации, что и для немного старше 8085 (и для которых 8086 также будет функционировать как продолжение) ». Также было 8087 и 8089. - Bart Silverstrim
Да, я оставил 80186, потому что я, честно говоря, не мог вспомнить, был ли это выпущенный продукт (и ему было слишком лениво смотреть его ...) - gWaldo
Этот ответ не имеет ничего плохого, но я честно считаю, что Даниэль должен быть принят, поскольку он гораздо более подробный. - Massimo


Ну, когда-то был чип под названием 8086, с более дешевой версией под названием 8088, которая использовалась в персональном компьютере под названием IBM PC. Улучшенная версия этого чипа была сделана и называется 80186, хотя это была не очень популярная версия. Однако впоследствии была улучшена улучшенная версия и названа 80286. Теперь это был очень популярный чип, в частности потому, что он использовался на компьютере под названием IBM PC AT.

Позже Intel, которая создала и продавала чипы 8086, 8088, 80186 и 80286, все из которых имели 16-битную архитектуру, увидели необходимость создания 32-битного чипа, чтобы конкурировать с подобными предложениями другими. Чтобы воспользоваться преимуществом своего положения, он сделал новый чип, способный запускать программное обеспечение, сделанное для ранее упомянутых чипов. Естественно, Intel назвала этот новый чип 80386.

К тому времени было много компьютеров, использующих различные версии чипов Intel, а также были чипы, отличные от Intel, которые были совместимы с Intel. Поэтому люди стали ссылаться на них как на 80x86.

Через некоторое время Intel запустила новый чип, но решила отказаться от 80, так что он стал 486 вместо 80486. Аналогичным образом, люди бросали «80» с передней панели «80x86» и называли этот материал просто x86 ,

Теперь я уверен, что некоторые придут и скажут, что Intel заклеймила свои чипы x86 в такое-то время, что и было, но мне все равно.

Дело в том, что постоянно растущая средняя цифра породила 80х86, и из этого получился x86 - даже если 80186 и 80286 не были 32 бит.

Итак, как только Intel, наконец, перешла на 64 бита, что он назвал своей новой архитектурой? Правильно! IA64! :-) Он также ретроактивно переименовал x86 в IA32, так сказать. Только IA64 не был совместим с x86, я имею в виду IA32, поэтому все игнорировали его.

А потом пришел AMD, который решил, что на рынке нужен 64-битный процессор, который по возможности совместим с семейством x86. В качестве маркетинговой привлекательности они назвали ее «x86-64» семьей, и они были очень успешными. Настолько, что Intel беззастенчиво следила за своим 64-битным процессором на базе x86.

Позже, поскольку люди ленивы, x86-64 стал известен просто как x64.

Итак, ответ на ваш вопрос, потому что x64 короче x86-64.


168
2017-10-06 15:23



+1 за отличное объяснение. - Gup3rSuR4c
Не для того, чтобы сделать выбор, но, чтобы быть точным, AMD никогда не продавала 64-битный чип. x64 или x86_64, к которым пришел AMD, были добавлены 64-битные расширения, добавленные в набор инструкций x86, созданный Intel - следовательно, x86_64, в отличие от Intel Itanium (IA_64), который был настоящим 64-разрядным чипом, не совместимым с набором инструкций x86. - Jeremy Hajek
Кроме того, я считаю, что Intel столкнулась с проблемами с товарными знаками, потому что они просто использовали цифры, и вы не можете торговать значком в последовательности чисел, поэтому то, что было бы 80586, стало Pentium, созданным именем, которое они могли бы продолжать торговать. - cdkMoose
Чтобы уточнить: AMD назвала свои расширения AMD64, а Intel называет их (которые они лицензировали у AMD) Intel64. Есть несколько тонких различий (они не совместимы на 100%), поэтому большинство поставщиков ОС обычно используют общий подмножество. На DVD-диске Windows 2008 папка установки на самом деле называется AMD64 (в отличие от I386 на 32-разрядной версии). Я не знаю, откуда приходит x86_64: от AMD, так как это расширение для x86 или Unix-Vendors, которое хочет нейтрального термина. - Michael Stum♦
@Jeremy Hajek: AMD64 / x86_64 - это настоящий 64-битный чип, его 64-разрядный режим не является эмуляцией и не имеет влияния на производительность (и на самом деле его 32-разрядный режим также не является эмуляцией). Чип имеет 64-битный набор команд и 64-разрядные регистры, что делает его 64-разрядным чипом. Я не знаю, где у вас создается впечатление, что AMD никогда не продавала 64-битный чип. Правда, AMD никогда не продавала 64-битную версию, которая нарушает совместимость с 32-разрядным чипом, как Intel с его IA64. - Lie Ryan


Из Википедия: Термин x86 относится к семейству архитектур набора инструкций на базе процессора Intel 8086.


14
2017-10-06 14:52





x86 и x64 - это имена процессора архитектуры, Архитектура процессора больше, чем количество бит на регистр.

x64 принимает имя, потому что переход на 64 бит - это самый большой изменение архитектуры от x86, но этот скачок далек от только изменение.

x86 получает свое имя от почтенного процессора 8086 и семейства, в который входят 80286, 80368, 486 и т. д. В то время, когда x86 стал установленным как имя для архитектуры, 32 бита на регистр не считались достаточно важной функцией для оправдания построения это в имя.


3
2017-10-07 18:28





Технически x86 просто ссылается на семейство процессоров и набор инструкций, которые все они используют. На самом деле он ничего не говорит о размерах данных.

x86 начался как 16-разрядный набор команд для 16-разрядных процессоров (процессоры 8086 и 8088), затем был расширен до 32-разрядного набора команд для 32-разрядных процессоров (80386 и 80486) и теперь был расширен до 64-разрядный набор команд для 64-разрядных процессоров. Раньше это было написано как 80x86, чтобы отразить изменяющееся значение в середине номеров моделей чипов, но где-то вдоль линии 80 спереди упали, оставив только x86.

Поражайте Pentium и его потомство для изменения способа, которым процессоры были названы и проданы, хотя все новые процессоры с набором инструкций Intel x86 по-прежнему называются совместимыми с x86, i386 или i686 (что означает, что все они используют расширения исходного 8086 набор инструкций).

x64 - действительно странный человек. Первое имя для 64-битного расширения для набора x86 называлось x86-64. Позже он был назван AMD64 (потому что AMD изначально требовала 64-битного расширения). Intel лицензировала 64-битный набор команд и назвала их версию EM64T. Оба набора команд и процессоры, которые их используют, все еще считаются x86.


2
2018-06-07 05:50





Что ж, x64 никогда не происходило из набора инструкций или производителя чипов. Первоначально он был из Windows XP. Первая 64-разрядная версия Windows получила название Windows XP x64, И я предполагаю, что термин x64 застрял оттуда.

x86 moniker поступает из 32-битного набора команд. Итак, все x86 процессоров (без ведущих 80) запускает тот же 32-битный набор команд (и, следовательно, все они совместимы). Так x86 стал defacto именем для этого набора (и, следовательно, 32 бит).

Оригинальное 64-битное расширение AMD на x86 набор был вызван AMD64, Intel позже лицензировала его, но даже все еще имя для 64-битного x86 набор команд обычно AMD64,

Но в основном это различие бренда. Вот что несколько различных основных дистрибутивов операционной системы называют каждый 64-битный вкус:

Так что в основном, кажется, что Linux предпочитает x86_64, BSD предпочитает amd64 и др x64...

Но стоит отметить, что все они означают одно и то же в маркетинговых целях. В тонкости они имеют в виду разные вещи (ну, amd64 означает что-то отличное от x86_64 (первая из них - специфическая для вендора архитектура, а вторая - подмножество двух архитектур поставщиков), но x86_64 === x64), но для всех, кроме программистов, записывающих в сборке или машинный код, это действительно не делает другого ...


1
2017-10-07 12:50



Весь текущий x64 на самом деле AMD-64 с момента смерти IA64. - Overmind