Assembler erlernen

03/16/2010 10:10 fr33g#1
Hey Leute,
ich bin neu hier=)
Ich würde gerne Assembler lernen.
Habe schon Erfahrung in C++.
Ich kann mich jedoch schon seit einer Woche nicht entscheiden welchen Assembler ich nehmen soll, auch weil ich bisher für keinen ein richtiges Anfängertutorial gefunden habe=(
Was würdet ihr mir empfehlen?
NASM, FASM? oder sonst was?
MASM wollt ich eg nicht, ist wieder so Microsoft spezifisch...:D
Ihr im Forum ist ja ein Tutorial verlinkt für TASM, wär das zu empfehlen?
Jedoch ist doch TASM nicht kostenlos oder?
Ist TASM denn gut?
Danke schonmal

Gruß freeG
03/16/2010 10:17 S.A.L.O.M.O.N.#2
#moved
03/16/2010 11:47 Nosferatu.#3
Quote:
Originally Posted by fr33g View Post
Hey Leute,
ich bin neu hier=)
Ich würde gerne Assembler lernen.
Habe schon Erfahrung in C++.
Ich kann mich jedoch schon seit einer Woche nicht entscheiden welchen Assembler ich nehmen soll, auch weil ich bisher für keinen ein richtiges Anfängertutorial gefunden habe=(
Was würdet ihr mir empfehlen?
NASM, FASM? oder sonst was?
MASM wollt ich eg nicht, ist wieder so Microsoft spezifisch...:D
Ihr im Forum ist ja ein Tutorial verlinkt für TASM, wär das zu empfehlen?
Jedoch ist doch TASM nicht kostenlos oder?
Ist TASM denn gut?
Danke schonmal

Gruß freeG
Du solltest dich mal im WWW erstmal umschauen, C++ kenntnisse werden dir bei ASM wie auch immer nix bringen.

Die meisten IDE's haben sogar schon einen ASM Parser / Complire onboard

Code:
 
// Delphi
Function blbla():String;
asm
  //
end;
mich würde es trozdem auch intressieren, da man nie ausgelernt hat :)
Edit: Habe schon viel gutes über NASM gehört, ist auch kostenlos und kannst es hier laden [Only registered and activated users can see links. Click Here To Register...]

Edit2: bzw hier [Only registered and activated users can see links. Click Here To Register...]
Viel glück
03/16/2010 12:01 flo8464#4
Quote:
Du solltest dich mal im WWW erstmal umschauen, C++ kenntnisse werden dir bei ASM wie auch immer nix bringen.
Natürlich bringen sie dir etwas.
C ist ein "Wrapper" für Asembler, du kannst jedes C/c++-Konstrukt 1:1 in Assembler umsetzen, mit dem Unterschied dass dir dabei der Compiler die ganze Scheißarbeit abnimmt, der Code 300x besser lesbar ist. Es gibt absolut keinen Grund Assembler zu schreiben (Bootloader und so ein Zeug mal außen vor)
03/16/2010 12:11 Nosferatu.#5
Das stimmt wohl, aber ASM:

Code:
DATASEG
        MyByte db 7
        MyWord dw 0C3Fh
        MyWord2 dw 8657
        MyConst = 249
CODESEG
        ...
        mov ax,34Fh
        mov bl,[MyByte]
        mov di,[MyWord]
        mov [MyWord],ax
        mov dh,34
        mov [MyByte],dh
        mov [MyByte],128
        mov cl,MyConst
        mov [MyWord],MyConst
        ...
        mov [MyWord],[MyWord2]          ;verursacht einen Fehler
        mov [MyWord],al                 ;verursacht einen Fehler
        mov al,[MyWord2]                ;verursacht einen Fehler
        mov al,cx                       ;verursacht einen Fehler
und C++ (beispiel):

Code:
#include<iostream>
  using namespace std;

  int main()
  {
    int a;
    int b;
    int erg=1;
    cout<<"Geben sie eine Zahl ein: ";
    cin>>a;
    cout<<"Und jetzt eine andere: ";
    cin>>b;

    for(int i=0;i<b;i=i+1)
    {
      erg=erg*a;
    }

    cout<<a<<" hoch "<<b<<" ist "<<erg<<"\n";
    cin.get();
  }
sind emense unterschiede. wie du schon sagtest "Wrapper" , aber er möchte ja ASM lernen und daher sagte ich das dass mit c++ lang nix zu tun hat
03/16/2010 12:12 fr33g#6
Ja ich habe den NASM auch schon auf meinem Pc, den FASM auch, das Problem wo finde ich gute Tutorials dafür, dass auf dem Forum hier, ist ja für den TASM.
Ich habe mir auch schon vieles über ASM durchgelesen, zwecks register und so.
Ich würde jetzt auf jeden fall gerne Assembler lernen.
Bräuchte halt ein gutes Tut bzw nen Link wo man den TASM bekommt;-)

Schonmal Danke

gruß freeG
03/16/2010 12:14 Nosferatu.#7
schau mal hier vorbei: [Only registered and activated users can see links. Click Here To Register...]
03/16/2010 12:18 fr33g#8
Ja genau das mein ich ja, ist ja hier im Forum auch verlinkt bei den Tutorials, sieht auch sehr gut und umfangreich aus;-)
Das einzige Problem...ich brauch ja dafür den TASM Assembler.
Aber ich finde leider keine Downloadmöglichkeit=(
Habt ihr vielleicht einen Link oder so?
Google konnt mir leider nicht helfen.
Oder würdet ihr mir einen anderen Assembler empfehlen?
Vor allem natürlich dazu dann auch ein passendes Tutorial;-)

Danke gruß freeG
03/16/2010 12:21 Nosferatu.#9
Quote:
Originally Posted by fr33g View Post
Ja genau das mein ich ja, ist ja hier im Forum auch verlinkt bei den Tutorials, sieht auch sehr gut und umfangreich aus;-)
Das einzige Problem...ich brauch ja dafür den TASM Assembler.
Aber ich finde leider keine Downloadmöglichkeit=(
Habt ihr vielleicht einen Link oder so?
Google konnt mir leider nicht helfen.
Oder würdet ihr mir einen anderen Assembler empfehlen?
Vor allem natürlich dazu dann auch ein passendes Tutorial;-)

Danke gruß freeG
Ich würde dir raten es erstmal durchzulesen bevor du dir um einen Assembler kopfschmertzen bereitest. Allein die einleitung hört sich meiner meihnung hilfreich und kompetent an.

Es gibt zwar kein TASM als freeware wie der nette Mensch in der Einleitung sagt, denoch gibt es Delphi 7 Personal , Delphi 2005 Personal und C++ Builder Personal Editions (keys können legal beim hersteller bezogen werden, Personal ist keine Trail und auch kein warez) wo dieser wie in meinen ersten post schon erwähnt bereits intregiert ist.
03/16/2010 12:31 fr33g#10
Ja klar, aber ich habe jetzt schonmal einen Teil gelesen und gleich auf der 1. Seite des Grundlagentutorials kommt Quelltext. So und es wär ja auch schön diesen auszuprobieren können.
Außerdem ist es doch auch blöd wenn man sich alles durchließt also da ganze Tut und im Anschluss will man selber was proggen mit nem anderen Assembler und der ganze Syntax ist falsch und es lässt sich nicht assembilieren.
Oder findet ihr nicht?
Falls nicht klärt mich bitte auf;-)

Gruß freeG
03/16/2010 12:40 Nosferatu.#11
Ich schicke dir via PN einen link (no warez keine angst) wo delphi 2005 personal kostenlos und legal bezogen / genutzt werden kann.
03/16/2010 12:43 fr33g#12
Ok, vielen Dank das ist sehr lieb;-)
Und da ist dann der TASM dabei?
sprich die Tasm.exe und Tlink.exe

gruß freeG
03/16/2010 12:45 Nosferatu.#13
Quote:
Originally Posted by fr33g View Post
Ok, vielen Dank das ist sehr lieb;-)
Und da ist dann der TASM dabei?
sprich die Tasm.exe und Tlink.exe

gruß freeG
Ab Delphi 7 ja
03/16/2010 17:51 fr33g#14
Also ich hab den jetzt so auf irgend so einer seite gefunden, also den TASM.
Blos wenn ich die Install.exe starte sagt er mir: Diese Version ist nicht mit der ausgeführten Windows version kompatibel. prüfen sie ob sie eine 32 bit oder 64 bit version benötigen.
So ich habe WIn7 64 Bit.
Kann ich das Ding jetzt nur über die DOSBox installieren?
Denn das geht schlecht...denn ich muss das Windows verzeichnis angeben, kann ich aber nicht, da er wenn ich C:\Windows angebe in dem Verzeichnis wo die install.exe ist ein verzeichnis namen windows macht, was ja logisch ist, da er von ausgeht dass dieser ordner C: ist...

Kann mir vll jemand helfen?

Gruß freeG
03/16/2010 19:12 Akorn#15
Vor kurzen gab es mal ein änliches thema [Only registered and activated users can see links. Click Here To Register...]

Ich würde dir Tasm nicht empfehlen das er schon alt ist und man keine modernen programme mehr mit schreiben kann.
Ich empfehle dir eher Nasm oder Fasm.

Leider sind die meisten Assembler tutorials für das Programmieren unter DOS. Sprich man programmiert im realmode mit 16bit und benutzt interrupts was ein großen unterschied zum programmieren unter modernen windows plattformen ist.

Tutorials selber für das assembler programmieren unter windows gibt es wenige und vorallem nicht auf deutsch, einer der wenigen tutorials darüber gibt es [Only registered and activated users can see links. Click Here To Register...]

Ansonsten findet man viele beispielcodes für z.b. Fasm auf dessen offizielen forum. Und für dür Nasm gibt es das Nasmx project, dort kann man ein packet downloaden das neben nasm noch ein paar nützliche tools und header datein für die programmierung unter windows beinhaltet, zusätzlich gibtes auf de seite noch einige beispiele.