was kann man damit machen



  • was kann mit assembly alles programmieren?



  • Gegenfrage, um dir die Sinnhaftigkeit deiner Frage zu verdeutlichen: Was kannst du mit deinen 2 Haenden alles machen?

    Assembler ist allgemein eine menschenlesbare Darstellung von Maschinencode.
    Demnach kannst du in Assembler beliebige direkt auf der Ziel-CPU ausfuehrbare Programme schreiben.



  • ok ne andere frage:

    die syntax ist ja je nach CPU anders... wenn jetzt firmen spiele teilweise in assembler programmieren...wie machen die das?

    die wissen ja nicht, was für ne CPU/Prozessor der anwender hat?



  • bosio schrieb:

    ok ne andere frage:

    die syntax ist ja je nach CPU anders... wenn jetzt firmen spiele teilweise in assembler programmieren...wie machen die das?

    die wissen ja nicht, was für ne CPU/Prozessor der anwender hat?

    Es gibt da das Wort "Architektur", bspw. x86. Quasi eine Reihe von Befehlen die jeder Prozessor der x86-Reihe unterstützen muss (nahezu alle gängigen Desktops/Notebooks besitzen einen Intel- oder AMD-Prozessor der x86-Architektur).

    Desweiteren können sie noch spezielle Extensions (bspw. MMX, SSE, etc.) mit speziellen Befehlen abfragen. So eine Art if(extension_there) { do_it_quick } else { do_it_slow }.

    Aber ja, für eine andere Architektur müssten die das neu schreiben, ja. Das ist ja auch mit ein Grund warum man Assembler nicht unbedingt haben will wenn man Portabilität am Zettel stehen hat.

    MfG SideWinder



  • Ok und wie bekomme ich die CPU-Familie von meinem Zielrrechner raus?
    Der Name (in meinem Fall Intel Core 2) sagt mir ja nicht viel oder ?



  • Hm... Doch?
    Google -> "Intel Core 2" -> (erster Treffer) http://de.wikipedia.org/wiki/Intel_Core_2
    sagt rechts: "Befehlssatz: x86, x86-64"
    Generell kannst du davon ausgehen, dass in einem PC eine x86 kompatible CPU steckt, egal von welchem Hersteller oder mit was fuer einem klangvollen Namen.
    (ein Mac ist BTW kein PC ... auch wenn dort neuerdings auch x86er drin sind)



  • Nobuo T schrieb:

    Hm... Doch?
    Google -> "Intel Core 2" -> (erster Treffer) http://de.wikipedia.org/wiki/Intel_Core_2
    sagt rechts: "Befehlssatz: x86, x86-64"
    Generell kannst du davon ausgehen, dass in einem PC eine x86 kompatible CPU steckt, egal von welchem Hersteller oder mit was fuer einem klangvollen Namen.
    (ein Mac ist BTW kein PC ... auch wenn dort neuerdings auch x86er drin sind)

    hmmmmm naja,... mac rüstet nach und nach seine IBM Kompatibilität auf 😃



  • Ist das auch der grund warum es einige programme als 32 und als 64bit gibt?



  • bosio schrieb:

    Ist das auch der grund warum es einige programme als 32 und als 64bit gibt?

    Ist was der Grund..?
    Die x86-Architektur ist ca. 30 Jahre alt und schleppt einen riesigen stokeligen Wust von Rueckwaertskompatibilitaet mit sich herum.
    Ein Teil davon sind zB. verschiedene Betriebsmodi der x86-CPU mit 16, 32 (ab 386, Ende '80er) oder 64 Bit (ab amd64, Anfang '00er).



  • bosio schrieb:

    Ok und wie bekomme ich die CPU-Familie von meinem Zielrrechner raus?

    Du kannst prüfen ob die CPUID Instruktion verfügbar ist und diese dann ggf. anwenden. Intel (als Beispiel) macht übrigens kein Geheimnis daraus, wie das geht:
    Intel® 64 and IA-32 Architectures Software Developer's Manuals


Anmelden zum Antworten