1. Foren
  2. Kommentare
  3. OpenSource
  4. Alle Kommentare zum Artikel
  5. › MenuetOS: In Assembler…

C ist doch ein Assembler

  1. Thema

Neues Thema Ansicht wechseln


  1. C ist doch ein Assembler

    Autor: yeti 20.08.09 - 17:56

    Ein "Pseudo Assembler".
    C wurde ja gerade, deswegen entworfen, um Unix portierbar zu machen.

    Wenn man mal PDP oder M68000 Assembler programmiert hat,
    fällt Einem auch direkt auf, dass so etwas wie *i++ direkt zu Assembler Befehlen korrespondiert.

    x86 Assembler ist allerdings etwas vorsintflutlicher.
    Dort gibt es nämlich keinen orthogonalen Registersatz.
    http://en.wikipedia.org/wiki/Orthogonal_instruction_set

    Wenn man allerdings auf einer PDP oder einem M68000 in Assembler programmiert,
    kann das genau so komfortabel sein, wie in C.

    Es ist eine Mär, zu behaupten, dass Assembler effektiver sei, als C.
    Wenn man wirklich an bestimmten Stellen händisch optimieren möchte,
    kann man das ja mit inline Assembler machen (#pragma inline)

    Das Projekt ist bestimmt ein interessantes Studienobjekt,
    aber wird wohl zu keiner größeren praktischen Anwendung kommen,
    weil das Zeug eben NICHT portabel ist.

  2. Re: C ist doch ein Assembler

    Autor: DrAgOnTuX 20.08.09 - 18:00

    Gebe dir vollkommen recht, aber ist Windows portabler? ;-)

  3. Re: C ist doch ein Assembler

    Autor: yeti 20.08.09 - 18:08

    > Gebe dir vollkommen recht, aber ist Windows portabler? ;-)
    Theoretisch/Praktisch ja, denn ich habe (früher) mal Windows-NT auf einer Alpha laufen sehen.

    Aber die Wirtschaftler bei MS haben das Projekt anscheinend gestoppt :-(

  4. Re: C ist doch ein Assembler

    Autor: NT-Kernel 20.08.09 - 19:48

    Den NT-Kernel hat MS ja eigentlich auch eher eingekauft.
    Auf PPC lief der wohl auch mal. Und auf ARM sind die mit Mobile und so ja schon länger. Mit Win7 wohl sogar das große Windows auf ARM.

  5. Re: C ist doch ein Assembler

    Autor: erselbst 20.08.09 - 21:45

    NT-Kernel schrieb:

    > Den NT-Kernel hat MS ja eigentlich auch eher eingekauft.

    Tatsächlich? Ich habe vor Jahren mal diesen Schinken gelesen

    http://www.amazon.com/Inside-Windows-Nt-Helen-Custer/dp/155615481X

    und wenn mich meine Erinnerung nicht täuscht, ist obige These ein hübsches Stammtischgerücht, aber nicht korrekt.

  6. C ist eine Hochsprache

    Autor: ID51248 20.08.09 - 22:05

    Ein Assembler setzt nur stur Mnemonics in Bytecode um.
    C ist eine Hochsprache. Sie unterscheidet sich insofern, dass es einen compiler Braucht, der noch einen Zwischenschritt macht. Nämlich C-Code in architekturspezifischen Assembler-Code und dann in Bytecode.
    Es ist aufgabe des Compilers für jede Architektur den Richtigen Befehl zu finden. Auf einem RISC wird derselbe Befehl vielleicht in mehrere Bytecode-Befehle umgesetzt während auf einem CISC einer reicht.

    "*i++;" ist ein sehr simples Beispiel.
    "float Fließzahl = 0.12345; " Schon nicht mehr.

    Siehe auch
    http://de.wikipedia.org/wiki/Assembler_(Informatik)

  7. Re: C ist doch ein Assembler

    Autor: IrgendEinAnderer 21.08.09 - 08:55

    > Tatsächlich? Ich habe vor Jahren mal diesen Schinken gelesen
    > [www.amazon.com]
    > und wenn mich meine Erinnerung nicht täuscht, ist obige These
    > ein hübsches Stammtischgerücht, aber nicht korrekt.

    Der Windows NT-Kernel ist in der Tat eine Eigenentwicklung von Microsoft - auch wenn einige erfahrene Betriebssystementwickler daran gearbeitet haben, die vorher bei DEC beschäftigt waren.

    Sehr lesenswert in diesem Zusammenhang ist vor allem

    http://www.amazon.de/Showstopper-Breakneck-Windows-Generation-Microsoft/dp/0759285780/ref=sr_1_1?ie=UTF8&s=books-intl-de&qid=1250837422&sr=8-1

    Der Windows NT-Kernel ist übrigens ausgesprochen Portabel - auch wenn viele Portierungen zur Zeit nicht kommerziell verwendet werden. Bekannte Portierungen sind:

    * x86
    * x64
    * iA64 (Itanium)
    * PowerPC (u.a. Xbox 360)
    * Alpha AXP
    * Mips
    * N-Ten (Intel i860) -> ist Namensgeber zu "NT" gewesen
    * PA-RISC (nur Laborversion)
    * SPARC (öffentlich gezeigte Laborversion)

  8. Re: C ist doch ein Assembler

    Autor: blubberhops 24.08.09 - 11:22

    Auf einer PDP-11 mag das stimmen, aber moderne CPUs verfügen über Dutzende Befehle, die man in C nicht ansatzweise abbilden kann, z. B. MMX oder SSE.

  9. Re: C ist doch ein Assembler

    Autor: hhhg 22.03.10 - 17:19

    Der NT-Kernel wurde von IBM geliefert, da Windows NT nichts anderes als ein modifiziertes OS/2 ist (steht auch mehr dazu auf Wikipedia).
    Meines Wissens hat aber IBM den Kernel nicht selbst entwickelt, sondern dies eine externe Programmierklitsche machen lassen, die auf sowas spezialisiert war.
    Der Kernel wurde selbst in neueren Versionen auf keinen Fall zu 100% bei Microsoft entwickelt, das ist totaler Quatsch, denn selbst bei Windows 7 sind noch Teile des Ur-NT-Kernels enthalten.

  1. Thema

Neues Thema Ansicht wechseln


Um zu kommentieren, loggen Sie sich bitte ein oder registrieren Sie sich. Sie müssen ausserdem in Ihrem Account-Profil unter Forum einen Nutzernamen vergeben haben. Zum Login

Stellenmarkt
  1. VBA-Entwickler und IDV-Koordinator (m/w/d)
    L-Bank, Karlsruhe
  2. Abteilungsleitung IT (w/m/d)
    DLR Deutsches Zentrum für Luft- und Raumfahrt e.V., Bonn
  3. Software Developer (m/w/d)* für Software Engineering
    Hallesche Krankenversicherung a. G., Stuttgart
  4. UX Designer Concept & UX Strategy (m/w/d)
    UDG Ludwigsburg GmbH, Mainz

Detailsuche


Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Spiele-Angebote
  1. 14,99€
  2. (u. a. Tom Clancy's Rainbow Six Siege - Deluxe Edition für 26,99€, Super Dragon Ball Heroes...


Haben wir etwas übersehen?

E-Mail an news@golem.de


Dragonbox-Pyra-Macher im Interview: Die Linux-Spielekonsole aus Deutschland
Dragonbox-Pyra-Macher im Interview
Die Linux-Spielekonsole aus Deutschland

Mit viel Verspätung ist die Dragonbox Pyra erschienen. Entwickler Michael Mrozek musste ganz schön kämpfen, damit es überhaupt dazu kam. Wir haben ihn in Ingolstadt zum Gespräch getroffen.
Ein Interview von Martin Wolf


    Software-Projekte: Meine Erfahrungen mit einer externen Entwicklerfirma
    Software-Projekte
    Meine Erfahrungen mit einer externen Entwicklerfirma

    Ich versprach mir Hilfe für meine App-Entwicklung. Die externe Entwicklerfirma lieferte aber vor allem Fehler und Ausreden. Was ich daraus gelernt habe.
    Von Rajiv Prabhakar

    1. Feature-Branches Apple versteckt neue iOS-Funktionen vor seinen eigenen Leuten
    2. Entwicklungscommunity Finanzinvestor kauft Stack Overflow für 1,8 Milliarden
    3. Demoszene Von gecrackten Spielen zum Welterbe-Brauchtum

    Kryptominer in Anti-Virensoftware: Norton 360 jetzt noch sinnloser
    Kryptominer in Anti-Virensoftware
    Norton 360 jetzt noch sinnloser

    Als wäre Antiviren-Software wie Norton 360 nicht schon sinnlos genug, preist diese nun auch Kryptomining an. Sicherheit bringt das nicht.
    Ein IMHO von Moritz Tremmel und Sebastian Grüner

    1. Kryptowährungen 69 Millionen US-Dollar für NFT eines digitalen Kunstwerks
    2. Kryptokunst Schlechte Idee, NFT