Pa jedan od mnogih

3

Pa jedan od mnogih

offline
  • Tool 
  • Novi MyCity građanin
  • Pridružio: 05 Okt 2005
  • Poruke: 23

Kazu ljudi (nisam ja izmislio) da su high level jezici za lamere, a low level jezici za majstore. Smile)

Assembly je kljuc i svaki ozbiljan programer mora da ga poznaje. Ne da bude ekspert, ali da ga poznaje dovoljno.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Peca  Male
  • Glavni Administrator
  • Predrag Damnjanović
  • SysAdmin i programer
  • Pridružio: 17 Apr 2003
  • Poruke: 23211
  • Gde živiš: Niš

pejca_lovac ::kada pocetnik uci high-level njemu se javlja misao da u tome uopste nema logike..

sta to nema logike, bas me zanima?

Citat:kad krenes sa asm ti ustvari komandujes procesuru..i tacno znas sta smes a sta ne..

kada razvijam recimo neki program, recimo za pregled mape grada... sta ja trebam da znam 'sta to ne smem' ?
sto je bitno da znam kako procesor radi?

zar C nije dovoljno low-level, da ja znam sta se desava u pozadini?



offline
  • Pridružio: 07 Okt 2005
  • Poruke: 81

Tool ::Assembly je kljuc i svaki ozbiljan programer mora da ga poznaje. Ne da bude ekspert, ali da ga poznaje dovoljno.

To sam i ja hteo da kazem.

Peca ::kada razvijam recimo neki program, recimo za pregled mape grada... sta ja trebam da znam 'sta to ne smem' ?

Otisao si previse na high-level.. jos ako koristis gotove module (VCL i slicno.)... Pretpostavljam da svako od pocetnika zeli nesto vise da postigne... kada neko pocne sa high-levelom on recimo potrosi 4 meseca na ucenje... posle kada treba da radi sa asm potrosice jos 4 meseca na ucenje.... medjutim ako krene sa asm potrosice 4 meseca na ucenje.. i kad predje na high-level postrosice najvise 1 nedelju na ucenje...

offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

pejca_lovac ::kada neko pocne sa high-levelom on recimo potrosi 4 meseca na ucenje... posle kada treba da radi sa asm potrosice jos 4 meseca na ucenje.... medjutim ako krene sa asm potrosice 4 meseca na ucenje.. i kad predje na high-level postrosice najvise 1 nedelju na ucenje...
Ovo definitivno nije tacno. Oni koji uce asm posle mnogo teze prihvate objektno programiranje. Verovatno postoje i izuzeci koji sve lako uce, ali vise je onih koji ce od objekata bezati kad god im se pruzi prilika.

Upravo radim na jednoj aplikaciji za preduzeca koja ce biti potpuno modularna (sve ce biti radjeno sa plug in-ovima), radice preko web-a, bice multiplatform aplikacija... prilicno veliki zalogaj da bi neki pocetnik mogao da je uradi, a nema ni malo asm koda.

Asm mi je bio koristan dok sam radio pod DOS-om da sakrijem kursor, da direktno upisujem u memorijse lokacije i slicno... sada ne vidim neku potrebu za asm kodom.

Ne treba izmisljati toplu vodu... za grafiku postoje gotove bibilioteke, takodje i za zvuk, za rad sa perifernim uredjajima koje su multiplatform. Zamisli koji kod bi trebalo kucati u asm za kreiranje multiplatform aplikacija.

Mozda bi bilo jasnije kad bi nam objasnio u kojim svojim programima si koristio asm i koju svrhu je imao taj deo programa?

offline
  • Pridružio: 07 Okt 2005
  • Poruke: 81

ja nisam rekao da se asm kod treba koristiti i dalje tj. kada se predje na high-level... u vrlo malim slucajevima asm se koristi u high-level kodiranju.

nismo se razumeli...asm osnove - tj. osnove hardverskog nivoa.

evo nekoliko aplikacija u kojima sam koristio asm kod.

* ZXNow! -> Spectrum emulator (fullscreen filteri - bilinearna interpolacija (MMX instrukcije), lancsoz3, itd.) plus Z80 CPU core

sve aplikacija za obradu slika:

* T-Morph -> 2d image morphing technique ...
* WavePad
itd. itd.

gotove biblioteke su za odredjene stvari kreirane i dosta spore u nekim slucajevima.

offline
  • mr_W 
  • Počasni građanin
  • Pridružio: 22 Mar 2004
  • Poruke: 835

@pejca_lovac

Ma ZX emulator može da se napiše i kao .BAT skripta, pa će biti dovoljno brz Wink

U današnje doba je totalno besmisleno patiti se assemblerom, kad ćeš i onako ručno da napišeš LOŠIJI kod nego što bilo koji kompajler može da generiše. Davno je prošlo doba kada si mogao u svojoj glavi da držiš sve cake i fore kako da ti asm kod bude optimalan.. sad je to praktično i teoretski nemoguće izvesti iz par razloga.. a ja ću da ti navedem barem dva:
1. ogromna količina podataka sa kojom bi mozak trebao da barata - kompleksnost današnjih procesora je proizvela daleko sofisticiranije metode optimizacije koda nego što ljudski mozak može u smisleno vreme da obradi.
2. ogromna brzina kojom se tehnologija i trendovi menjaju. Zamisli da ti treba nekoliko meseci, ili recimo godinu dana da naučiš kako da optimizuješ za jedan konkretan CPU. I sad, taman kad si ti to naučio, tamo neki Intel i AMD izbace još novije procesore i još bolje i drugačije trikove za optimizaciju..

Zbog svega toga su pametni ljudi izmislili kompajlere, u koje logika optimizacije za određeni procesor treba da se implementira samo jednom.. za razliku od "ručne" izrade asm programa gde svaki put kad se uhvatiš editora treba da razbijaš glavu da li da ovde staviš mov, a ovde nop .. ili zašto uopšte da staviš nop ako adresa nije deljiva sa 64 ili je to možda kod amd-a ovako a kod intela onako..

Ma, cela ta ideja oko ručnog pisanja asm koda je zamrla još početkom prošle decenije.. Lepo je znati asm zbog razumevanja rada kompjutera, isto kao što je pascal dobar jezik za učenje proceduralnog programiranja.. ali u današnjem realnom svetu, ni jedan ni drugi nemaju upotrebnu vrednost.

Najbolje je ostaviti se ćorava posla i posvetiti se programiranju.

offline
  • Pridružio: 07 Okt 2005
  • Poruke: 81

dobar ti je post... sad cu da ga citiram... na drugim forumima... prevedem na engleskom i stavim na strane... pa da vidim kako ce ljudi da reaguju na ovo.

offline
  • mr_W 
  • Počasni građanin
  • Pridružio: 22 Mar 2004
  • Poruke: 835

Ma bolje programiraj nešto Wink

offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

@mr_W

E bas si mu lepo rekao Smile

offline
  • Peca  Male
  • Glavni Administrator
  • Predrag Damnjanović
  • SysAdmin i programer
  • Pridružio: 17 Apr 2003
  • Poruke: 23211
  • Gde živiš: Niš

Peca ::pejca_lovac ::kada pocetnik uci high-level njemu se javlja misao da u tome uopste nema logike..

sta to nema logike, bas me zanima?


i ne odgovori mi na ovo pitanje...

Dopuna: 08 Okt 2005 0:27

pejca_lovac ::i naravno odmah obustavlja rad...

pre ce da obustavi rad kada vidi da za jedan obican program koji sabira dva broja, koja prosledis programu kao argumente, pri pozivanju programa iz komandne linije, i ispisivanje rezutata, mora da iskuca jednu A4 stranu asemblerskog koda...
pa ja bih pobego od programiranja, da mi je cale pokazao asembler umesto basic-a, kad sam imao 10 godina...

pejca_lovac ::pored toga svestan je da ne drzi stvari pod svojom kontrolom...

C je poprilicno low-level, i sve se drzi pod kontrolom... svaki bajt u memoriji...
nize nisam imao nikada potrebu da se spustam...

da sam radio neke algoritme za grafiku, pixel shadere, filtere, i slicno, verovatno bi mi i trebalo poznavanje asemblera...

no... i dalje ostajem pri stavu da ce pocetnike mozak da zaboli ako im prvo das asembler... i pobecice mnogi od programiranja u startu...

da nije tako - u srednjim skolama bi se ucio asembler, a ne pascal...
mnogo je lakse nauciti asembler kada vec ovladas tehnikama programiranja, nego prvo krenuti od asemblera...

objasni pocetniku da mora da otkuca 20 linija za hello world...
naravno da ce dici ruke od programiranja...

Ko je trenutno na forumu
 

Ukupno su 774 korisnika na forumu :: 3 registrovanih, 1 sakriven i 770 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: bladesu, Milos82, scimitar19