Haben Intel- und AMD-Prozessoren denselben Assembler?

Lesezeit: 3 Minuten

Benutzeravatar von user136281
Benutzer136281

Die C-Sprache wurde verwendet, um UNIX zu schreiben, um Portabilität zu erreichen – das gleiche C-Programm, das mit verschiedenen Compilern kompiliert wurde, erzeugt unterschiedliche Maschinenbefehle. Wie kommt es, dass das Windows-Betriebssystem sowohl auf Intel- als auch auf AMD-Prozessoren ausgeführt werden kann?

  • erinnert sich jemand an AMDs K5-Serie 🙂

    – Nick Dandoulakis

    10. Juli 2009 um 13:54 Uhr

  • Jetzt, da AMD an ARM64 arbeitet, ist diese Frage mehrdeutig 🙂

    – Jeff Hammond

    23. Dezember 2014 um 1:29 Uhr

  • AMD hat schon immer CPUs hergestellt, die mit Intel kompatibel sind…

    – Yousha Aleayoub

    15. August 2017 um 22:33 Uhr

  • +1. Intern handhaben AMD und Intel diese allgemeinen Anweisungen im Allgemeinen ziemlich unterschiedlich: Einige Anweisungen können auf einer Architektur viel langsamer ausgeführt werden als auf der anderen.

    – Eric Bainville

    10. Juli 2009 um 14:07 Uhr

  • Genau richtig und so ist es bei Linux. Ich bin ein Linux-Kernel-Hacker, und wenn Sie jemals Ihren eigenen Linux-Kernel neu kompiliert haben, werden Sie feststellen, dass Sie auf eine Vielzahl von CPU-Typen abzielen können und natürlich den falschen Typ auswählen und installieren, was zu einem Core-Dump führt oder sich aufhängt System. Schöner Bericht von onebyone zu diesem Thema !!!

    – Erich

    10. Juli 2009 um 14:32 Uhr

  • Intel hat auch den RISC i860 ungefähr gleichzeitig mit dem Aufstieg der x86-Serie hergestellt … offensichtlich wissen wir, welcher überlebt hat und welcher nicht 🙂

    – vergänglich

    10. Juli 2009 um 15:03 Uhr

  • Intel- und AMD-CPUs können sich selbst bei gemeinsamen Anweisungen unterschiedlich verhalten. Als spezifisches Beispiel wird im Real-Modus das Ausführen von EIP über 0xffffffff hinaus eine Ausnahme auf Intel erzeugen, aber auf AMD stillschweigend auf 0x00000000 umbrechen – zumindest soweit mein Gedächtnis dient.

    – vergänglich

    10. Juli 2009 um 15:12 Uhr

  • Das könnte als eine „gut, dann tu das nicht“-Situation gelten. Ich bin kein Assembler-Programmierer, also kann ich mir nicht vorstellen, warum Sie das möchten 🙂

    – Steve Jessop

    10. Juli 2009 um 15:36 Uhr

  • Und schauen Sie sich den Linux-Kernel für ein Betriebssystem an, das auf vielen Architekturen läuft, sogar mit unterschiedlichen Befehlssätzen. Während der C-Code portierbar ist, muss für jedes Ziel eine Menge Assembler geändert werden.

    – Nik Meyer

    10. Juli 2009 um 13:45 Uhr

  • Die XBox 360 verwendet einen modifizierten Windows 2000-Kernel, der auf einer PPC-Architektur läuft. Ich bin mir ziemlich sicher, dass Windows wahrscheinlich so portabel ist wie andere Betriebssysteme da draußen, es gibt einfach keinen starken Anreiz für Microsoft, der Öffentlichkeit tatsächlich andere Versionen zur Verfügung zu stellen (für etwa zwei Kunden oder so).

    – Joey

    10. Juli 2009 um 13:46 Uhr

  • Diese Antwort ist meistens richtig, außer im Fall von SIMD-Befehlssätzen. Wenn Sie 3DNow!, SSE1/2/3 usw. einmischen, fangen die Dinge an zu divergieren, aber das ist auch der Grund, warum x86-Compiler diese Befehlssätze im Allgemeinen nicht unterstützen.

    – Hythlodayr

    10. Juli 2009 um 13:57 Uhr

  • Mitte der neunziger Jahre gab es eine Version von Windows, die auf PowerPC-, MIPS- und Alpha-Prozessoren sowie x86 lief. Sie verschwanden allmählich zwischen NT3.1 und Win2000. Möglicherweise gibt es noch eine Version, die auf dem Itanium läuft. NT wurde im Hinblick auf Portabilität geschrieben – es gibt ein nettes Buch namens Show Stopper über die Entwicklung – aber ich vermute, dass Sie Win7 jetzt nicht einfach für, sagen wir, PPC umbauen könnten.

    – Stephen Darlington

    10. Juli 2009 um 14:33 Uhr

  • Sehen Sie sich die FreeBSD- oder NetBSD-Kernel (und Userlands) nach Betriebssystemen an, die auf vielen verschiedenen Architekturen gut laufen. Sie handhaben Portabilität und Dokumentation recht gut

    – Guter Mensch

    24. Februar 2013 um 18:45 Uhr

1387540cookie-checkHaben Intel- und AMD-Prozessoren denselben Assembler?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy