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

C ist doch ein Assembler

Anzeige
  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.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  2. Re: C ist doch ein Assembler

    Autor DrAgOnTuX 20.08.09 - 18:00

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

    Benutzer wird von Ihnen ignoriert. Anzeigen

  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 :-(

    Benutzer wird von Ihnen ignoriert. Anzeigen

  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.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  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.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  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)

    Benutzer wird von Ihnen ignoriert. Anzeigen

  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)

    Benutzer wird von Ihnen ignoriert. Anzeigen

  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.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  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.

    Benutzer wird von Ihnen ignoriert. Anzeigen

Neues Thema Ansicht wechseln


Entschuldigung, nur registrierte Benutzer dürfen in diesem Forum schreiben. Klicken Sie hier um sich einzuloggen

Logitech: iPad-Tastatur mit Kabel
Logitech
iPad-Tastatur mit Kabel

Tastaturen werden an das iPad normalerweise schnurlos per Bluetooth angebunden. Doch Logitech hat nun ein Modell vorgestellt, das per Lightning-Kabel oder 30-Pin-Adapter mit dem Tablet verbunden wird. Es ist besonders für die Anforderungen von Schulen konstruiert worden.

  1. Zoomboard Tastatur mit Lupe für winzige Touchscreens
  2. Kalq-Tastatur Neues Tastenlayout zum Schnelltippen auf Touchscreens
  3. CM Storm Quickfire Stealth Tastatur fast ohne Tastenbeschriftungen

Blackberry Z10 im Langzeittest: Tausche Android gegen Blackberry
Blackberry Z10 im Langzeittest
Tausche Android gegen Blackberry

Mit dem Z10 versucht Blackberry ein Comeback im Smartphone-Markt. Auch Android-Anwendungen lassen sich auf dem Gerät installieren. Golem.de-Autor Tobias Költzsch hat zwei Wochen lang sein Galaxy S3 gegen das Z10 getauscht und im Langzeittest überprüft, wie schwer ein Umstieg ist.

  1. Smartphones Blackberry Q5 im Juli, Blackberry 10.1 wird verteilt
  2. Mobilfunk Fast drei Viertel der Smartphones laufen mit Android
  3. Blackberry-Chef "In fünf Jahren gibt es keine Tablets mehr"

Google-Smartphone: Galaxy S4 mit purem Android wird nur in den USA verkauft
Google-Smartphone
Galaxy S4 mit purem Android wird nur in den USA verkauft

Das von Google angekündigte Galaxy S4 mit purem Android wird ausschließlich in den USA verkauft. Google hat derzeit keine Pläne, das Samsung-Smartphone in anderen Regionen anzubieten.

  1. Samsung 10 Millionen Galaxy S4 in weniger als einem Monat verkauft
  2. Samsung Mehr als 10 Millionen Galaxy S4 in Rekordzeit verkauft
  3. Smartphone Google bringt Galaxy S4 mit purem Android

  1. Need for Speed Rivals: Verfolgungsjagden zwischen Cops und Rasern
    Need for Speed Rivals
    Verfolgungsjagden zwischen Cops und Rasern

    Eine offene Spielumgebung, sehr schnelle Autos und spannende Verfolgungsjagden kündigt EA für Need for Speed Rivals an. Das Rennspiel auf Basis der Frostbite-3-Engine erscheint auch für die Next-Gen-Konsole.

  2. Digitimes: Windows-8-Tablets sollen 8 Prozent des Marktes erreichen
    Digitimes
    Windows-8-Tablets sollen 8 Prozent des Marktes erreichen

    Eine Preissenkung bei den Software-Lizenzen hilft Windows 8-Geräten. Ihr Anteil soll auf 10 bis 20 Millionen steigen.

  3. Doc Patch: Das Grundgesetz wird Open Data
    Doc Patch
    Das Grundgesetz wird Open Data

    Der Chaos Computer Club hat das Grundgesetz als Open Data veröffentlicht. Die dafür eingerichtete Plattform steht auch anderen Nutzern offen, die weitere Dokumente aus der Verwaltung dort veröffentlichen sollen.


  1. 21:07

  2. 19:04

  3. 18:57

  4. 18:20

  5. 18:13

  6. 16:57

  7. 16:51

  8. 16:11