Akik rendesen megtanultak assembly-ben - pláne netalántán gépi kódban - programozni, azok igazából szupererőt szereztek a programozáshoz?
Mármint úgy értem, hogy az assembly-ben való programozásnál kell a legkevesebb építőelemből (utasításból) a legtöbb mindent, nagyon precízen, nagy emlékezőképességgel és összefüggés-memorizálással felépíteni a programot.
Annál csak több luxussal kínáló prog.nyelvek és fordítók vannak, szóval onnantól már igazából minden nehézség feloldódott annak, aki assembly-ben megtanult programozni.
Természetesen nem pár szót statikusan kiírogató próbaprogramokra gondoltam, hanem pl. egy képeffektezőre, audiovizuális demóra, tömörítőre, útkereső algoritmusra, stb-stb.
Az már egy idióta C#-ot, Java-t, C/C++-t körberöhöghet, hisz olyan alapok nélkül is képes volt egy komplett rendszert megvalósítani (s nem csak megtervezni), amik nélkül egy C-s el se tudná képzelni a dolgot, s szinte egy sort se tudna lekódolni. Nemde?
Én az assembly-ben zsonglőrködő vén rókákat - esetleg durván zseni fiatalokat - mindig csodáltam, őket tekintem igazán valakinek (nem az neten zseniként reklámozott "kóddal álmodó" Java-kóder tizenéveseket); De én magam - régebbi terveimmel szemben - egy hétvége erejéig se mertem elkezdeni tanulni a dolgot, gondoltam, hogy ha én nem születtem bele ilyesmibe, csak arra van esélyem, hogy kidobjak 2 szabadnapot az életemből.
Más hogy látja? Van olyan, akinek van assembly-ben virtuózan kódoló tehetséges ismerőse?
#2 vagyok.
Egy kiigazítás neked: az assembly másképpen gépi kód.
Gépi kódban ma már nem programozik senki. Ehhez már a feltételek sem adottak.
Assemblyt tanulni alapszinten, bár furcsának hat, de könnyebb mint bármely más nyelven, csak az assembly, mint munkaeszköz, lényegesen lassabb, mint a magas szintű nyelvek.
A lassúság persze nem a futtatandó kód sebességére értendő, hanem annak összetettségére. Tehát, egy "hello world" magas szintű nyelveken egy sor, asm-ben meg legalább 10-12. Emellett, több odafigyelést is igényel, mert assemblyben elég könnyű hibát ejteni.
Még annyit, hoy szupererő, az nincs.
ASM-ben is lehet gányolni, rossz minőségű kódot írni.
Ez alól felmentést az asm sem ad.
Az viszont tény, hogy az asm-ben kódolás arra alkalmasakból hamarabb kihozza az oroszlánt, mint mondjuk egy Java, vagy C sharp, már csak azért is, mert az ASM egy szint felett elkivánja a hardver ismeretét, a másik két említett nyelv meg még viccből sem.
Az ASM ezen felül egy szemléletet is biztosít, olyat, amit magas szintű nyelvek nem nyújtanak.
ASM-ben kódot írni? Áhh, azt bárki tud.
viszont PROCESSZORT TERVEZNI? Ahol te találod ki magát az utasításkészletet, AMIRE assembylben programozni, NAH gyerek, az ám a művészet! és joggal aláz minden programozót!
Képfelismerés, real time kritériumok, párhuzamos adatfeldolgozás, hangelemzés, sok dolognál használatos a célhardver tervezés. egy 100 mhz-es fpga alázza a 32 magos 4 ghz-es xeon szerverprocesszorokat divx videótömörítésben, persze ha tudod hogyan kell csinálni...
#2 vagyok.
Minden assembly programozó rendelkezik saját készítésű szub-rutin készlettel. Nem hülye, hogy minden alkalommal
újra írja! Lényegében saját "fordítóval" dolgozik, saját maga írta rutinokkal. Ez az egyik oka, hogy az assembly programok magukon viselik a készítőjük "ujjlenyomatát".
Semmivel sem lassabb mint bármi más nyelv, mindig a konkrét elvégzendő feladathoz optimalizálva!
Ismét #2.
"Assemblyt tanulni alapszinten, bár furcsának hat, de könnyebb mint bármely más nyelven.."
"bármilyen más nyelv" mind-mind assemblyn íródott, és arra fordít! Az a CPU-"nyelve"!
"Ehhez már a feltételek sem adottak."
Üsd be a google-ba.
9: Fékezd már magad ember!!
Eleve, csupa baromságot írsz.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!