|
You last visited: Today at 10:57
Advertisement
Assembler direkt lernen?
Discussion on Assembler direkt lernen? within the General Coding forum part of the Coders Den category.
06/18/2013, 21:04
|
#1
|
elite*gold: 0
Join Date: Jun 2013
Posts: 2
Received Thanks: 0
|
Assembler direkt lernen?
Hallo,
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?
|
|
|
06/18/2013, 21:07
|
#2
|
elite*gold: 0
Join Date: Feb 2013
Posts: 1,137
Received Thanks: 869
|
Wenn du es unbedingt willst, kannst du es. Mach, was dir Spaß macht und zu wissen, was unter der Haube passiert, schadet nie.
|
|
|
06/18/2013, 23:52
|
#3
|
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
|
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.
|
|
|
06/19/2013, 01:03
|
#4
|
elite*gold: 0
Join Date: Feb 2011
Posts: 1,206
Received Thanks: 736
|
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.
|
|
|
06/19/2013, 14:29
|
#5
|
elite*gold: 0
Join Date: Dec 2012
Posts: 255
Received Thanks: 110
|
Quote:
Originally Posted by Dr. Coxxy
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.
|
|
|
Similar Threads
|
[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
|
All times are GMT +1. The time now is 10:57.
|
|