Ich wollte programmieren lernen, und danach mich mit dem Thema Reverse Engineering beschäftigen, dann habe ich mir gedacht lerne ich Assembler hab auch ein Buch schon zu Hause, aber über die Sachen, die ich so lese ist, Assembler nicht als Anfänger Sprache da die meisten Leute sagen lerne C/C++ aber eigentlich habe ich da wirklich keine Lust drauf denn die Assembler Syntax gefällt mir ist einfach (persönliche Meinung aus den ersten zwei Kapitel über die Grundlagen des Prozessors Register usw.) meint ihr wenn ich unbedingt diese Sprache lernen will soll ich dann diese als Erstes lernen?
Wenn man Spaß dran hat, hat man auch keine Probleme. Gilt für alle Sprachen.
Leute, die von "zu schweren" Sprachen sprechen, sind Feggets, die sich dazu überwinden mussten bzw. dazu gezwungen wurden, sie zu lernen.
Allerdings macht es gerade für das Reversing natürlich Sinn, trotzdem nebenbei C++ zu lernen. Nicht, weil du ASM sonst nicht verstehen würdest (kapiere nicht, wie man jemandem raten kann, erst C oder C++ oder sonst was zu lernen, bevor er ASM lernen darf), sondern einfach, weil es dabei sehr hilfreich sein wird. Nichtsdestotrotz kannst du theoretisch auch Hacks u.Ä. vollständig in ASM programmieren; ist halt nur aufwändiger.
hängt davon ab, was du am ende anstellen willst.
wenn du es ausschließlich zum reversen also zum verstehen von fremden code erlernen willst, solltest du zuerst c/c++ lernen bzw. grob anschauen wie code in einer hochsprache aussieht und was der compiler aus diesem hochsprachencode an assemblercode erzeugt, damit du den fremdcode auch wirklich "verstehst".
es bringt nichts winzige codeschnipsel von einem programm zu verstehen, wenn du sie nicht in einen größeren kontext einordnen kannst.
Wenn du ausschließlich Assembler kannst, wird das normalerweise in echten größeren anwendungen sehr schwierig, da erstens eine riesige menge an assembler code erzeugt wird, die von einem menschen nicht mehr zu überblicken ist und nur noch wenig mit von menschem geschriebenem asm code zu tun hat und zweitens der compiler einige einzigartige umsetzungen von hochsprachencode erzeugt, idr. auch noch zahlreiche optimierungen einbaut, die für einen menschen nicht auf anhieb ersichtlich sind wenn man nicht eine sehr genaue vorstellung davon hat, was der code den man gerade untersucht eigtl. tun soll.
Verständnis wie eine hochsprache wie z.b. C++ in assembler umgesetzt aussieht ist dabei unbedingt nötig.
Ist aufjedenfall kein fehler asm zu lernen, kommst du bei reverse engineering sowieso nicht dran vorbei, aber du solltest schon eine vorstellung davon haben wie das ursprüngliche programm aussah.
hängt davon ab, was du am ende anstellen willst.
wenn du es ausschließlich zum reversen also zum verstehen von fremden code erlernen willst, solltest du zuerst c/c++ lernen bzw. grob anschauen wie code in einer hochsprache aussieht und was der compiler aus diesem hochsprachencode an assemblercode erzeugt, damit du den fremdcode auch wirklich "verstehst".
es bringt nichts winzige codeschnipsel von einem programm zu verstehen, wenn du sie nicht in einen größeren kontext einordnen kannst.
Wenn du ausschließlich Assembler kannst, wird das normalerweise in echten größeren anwendungen sehr schwierig, da erstens eine riesige menge an assembler code erzeugt wird, die von einem menschen nicht mehr zu überblicken ist und nur noch wenig mit von menschem geschriebenem asm code zu tun hat und zweitens der compiler einige einzigartige umsetzungen von hochsprachencode erzeugt, idr. auch noch zahlreiche optimierungen einbaut, die für einen menschen nicht auf anhieb ersichtlich sind wenn man nicht eine sehr genaue vorstellung davon hat, was der code den man gerade untersucht eigtl. tun soll.
Verständnis wie eine hochsprache wie z.b. C++ in assembler umgesetzt aussieht ist dabei unbedingt nötig.
Ist aufjedenfall kein fehler asm zu lernen, kommst du bei reverse engineering sowieso nicht dran vorbei, aber du solltest schon eine vorstellung davon haben wie das ursprüngliche programm aussah.
Besonders hart wirds bei voller Optimierung und inlining. Da erkenne ich selbst mit Hexrays meine Funktionen nicht wieder.
[AutoIt & Assembler] Assembler lernen und in AutoIt benutzen 01/12/2021 - Coding Tutorials - 18 Replies 1. Vorwort
1.1. Vorraussetzungen für das Programmieren mit Assembler
1.2. Ein paar Fakten zu Assembler/Computern
1.3. Warum Assembler benutzen
2. Assembler Allgemein
2.1. Arbeitsweise von Assembler
2.2. Syntax und Semantik
2.3. Register
3. Erste Assembler Schritte
3.1. Mov
Assembler 02/11/2012 - General Coding - 0 Replies Hallo PvP,
nachdem ich mich sehr gut mit Java, C++ und Php/sql auskenne wollte ich
fragen ob mir jemand ein (Kostenloses)Buch über Assambler empfeheln kann.
mfg Maincrafter
:bandit:
[GM]Code: Reich direkt wechseln / Gilde direkt... 10/14/2010 - Metin2 Private Server - 4 Replies Hey Leuts.
Habe ne frage bin aufn P server.. und wollte fragen obs geht direkt des reich zu wechseln mitn code oder halt die gilde direkt zu wechseln ohne 1 tag zu warten -.-
Pls Antwort