Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
gnoom
HV veteran
liitunud: 12.12.2003
|
18.08.2009 21:06:51
Assembler ja selle seos teiste keeltega |
|
|
.Eestlane. kirjutas: |
Assembleri õppimine on lihtsalt mõistmaks kõikide keelte tagamaid. |
No kui tahad keelte tagamaid õppida mõistma, siis võta kätte ja kirjuta miski oma keel valmis. Siis on ka tagamaad selged.
|
|
Kommentaarid: 67 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
64 |
|
tagasi üles |
|
 |
.Eestlane.
HV kasutaja

liitunud: 14.01.2006
|
26.08.2009 13:10:06
|
|
|
ärge hulluks minge
|
|
Kommentaarid: 3 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
3 |
|
tagasi üles |
|
 |
tooner
HV vaatleja
liitunud: 07.05.2009
|
15.10.2009 23:32:12
|
|
|
.Eestlane. kirjutas: |
ärge hulluks minge |
Pole hullu, vähemalt vanasti (ja ma loodan et ka siiamaani) õpetati ülikoolis lexi ja yacci igale ititudengile. Tuleb kasuks. Kas assembler kõrgkeelte mõistmisel kasuks tuleb, selles ma nii kindel ei ole.
|
|
Kommentaarid: 1 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
1 |
|
tagasi üles |
|
 |
Deadlock
Kreisi kasutaja
liitunud: 16.07.2004
|
17.10.2009 14:10:27
|
|
|
No ikka tuleb, arvestades, et keel assembleriks tõlgitakse. Päris hea on ju teada, mida iga funktsioon sul arvutis riistvaraga täpselt teeb.
_________________ "Believe you can, believe you can't; either way, you're right." - Henry Ford |
|
Kommentaarid: 8 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
tooner
HV vaatleja
liitunud: 07.05.2009
|
18.10.2009 22:34:44
|
|
|
Bluebull kirjutas: |
No ikka tuleb, arvestades, et keel assembleriks tõlgitakse. Päris hea on ju teada, mida iga funktsioon sul arvutis riistvaraga täpselt teeb. |
Mismõttes "iga keel assembleriks tõlgitakse"? Masinkoodiks tõlgitakse, mitte assembleriks. Ja muide, nimeta kasvõi üks funktsioon mille kohta sa täpselt tead, milleks ta tõlgitakse? Tänased kompilaatorid on nii kole targaks läinud, et optimeerivad rohkem, kui üks assembleritundja progeja ise oskaks.
|
|
Kommentaarid: 1 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
1 |
|
tagasi üles |
|
 |
gnoom
HV veteran
liitunud: 12.12.2003
|
19.10.2009 01:10:58
|
|
|
tooner kirjutas: |
Tänased kompilaatorid on nii kole targaks läinud, et optimeerivad rohkem, kui üks assembleritundja progeja ise oskaks. |
Kompilaator saab olla just nii tark kui ta on oma looja poolt tehtud.
|
|
Kommentaarid: 67 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
64 |
|
tagasi üles |
|
 |
Deadlock
Kreisi kasutaja
liitunud: 16.07.2004
|
19.10.2009 14:59:18
|
|
|
tooner kirjutas: |
Mismõttes "iga keel assembleriks tõlgitakse"? Masinkoodiks tõlgitakse, mitte assembleriks. Ja muide, nimeta kasvõi üks funktsioon mille kohta sa täpselt tead, milleks ta tõlgitakse? Tänased kompilaatorid on nii kole targaks läinud, et optimeerivad rohkem, kui üks assembleritundja progeja ise oskaks. |
Veidi panin mööda, assemblyks tõesti mitte, kuigi masinkoodi ja assembly vahe on ju põhimõtteliselt ainult koodi esituses kinni.. Vähemalt nii ma olen aru saanud ja seega pole mingi probleem ka mingit kõrgemat progemiskeelt assemblyks tõlkida.
|
|
Kommentaarid: 8 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
Supiplex
HV veteran

liitunud: 11.12.2002
|
19.10.2009 15:02:05
|
|
|
tooner kirjutas: |
Bluebull kirjutas: |
No ikka tuleb, arvestades, et keel assembleriks tõlgitakse. Päris hea on ju teada, mida iga funktsioon sul arvutis riistvaraga täpselt teeb. |
Mismõttes "iga keel assembleriks tõlgitakse"? Masinkoodiks tõlgitakse, mitte assembleriks. |
Tihti tõlgitakse enne assemberiks ja sealt masinkoodiks. Aga mis seal ikka tähti närida.
tooner kirjutas: |
Ja muide, nimeta kasvõi üks funktsioon mille kohta sa täpselt tead, milleks ta tõlgitakse? Tänased kompilaatorid on nii kole targaks läinud, et optimeerivad rohkem, kui üks assembleritundja progeja ise oskaks. |
Vaat selles ongi iva, et ei tea. Aeg-ajalt tasub (ja harva lausa tuleb) kood debuggeris käima tõmmata ja disassembleri aknas vaadata mida kompilaator valmis meisterdas.
Üldiselt veebi- ja rakendusprogrammeerijad tõesti ei pea end assembleriga vaevama, aga kui natukenegi allapoole ronida siis tuleb ikka kõvasti kasuks. Maailmas on süsteemi-, draiveri- ja sardprogejatele tööd nigu muda - ja see töö on muide kuradi põnev
_________________ The young lady had an unusual list,
Linked in part to a structural weakness.
She set no preconditions. |
|
Kommentaarid: 38 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
1 :: |
34 |
|
tagasi üles |
|
 |
gnoom
HV veteran
liitunud: 12.12.2003
|
19.10.2009 19:08:51
|
|
|
Supiplex kirjutas: |
Üldiselt veebi- ja rakendusprogrammeerijad tõesti ei pea end assembleriga vaevama, aga kui natukenegi allapoole ronida siis tuleb ikka kõvasti kasuks. Maailmas on süsteemi-, draiveri- ja sardprogejatele tööd nigu muda - ja see töö on muide kuradi põnev  |
Vähe sellest et elu põnevam on, sellega saab ka rammusama vorsti lauale kui veebinikerdajad.
|
|
Kommentaarid: 67 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
64 |
|
tagasi üles |
|
 |
maxorator
HV kasutaja
liitunud: 30.08.2006
|
19.10.2009 22:36:27
|
|
|
Assembly ei olegi tegelikult programmeerimiskeel. See on lihtsalt veidi inimloetavamal kujul esitatud masinakood ning masinakood on erineva arhitektuuriga seadmetel erinev. Keele tagamaid sellega otseselt ei õpi. Saab teada vaid, kuidas mingi kindel kompileerija mingile kindlale seadmele seda koodi masinakoodiks ümber on tõlkinud.
|
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
 |
nene
Kreisi kasutaja

liitunud: 20.03.2004
|
19.10.2009 23:26:37
|
|
|
maxorator kirjutas: |
Assembly ei olegi tegelikult programmeerimiskeel. |
Tohoh. Ma ei tahaks sellel pikemalt peatuda, aga see väide lihtsalt kutsub ennast ümber lükkama.
Programmeerimiskeel = keel milles saab programmeerida.
maxorator ütleb: Assembly pole programmeerimiskeel.
Järelikult: assembly's ei saa programmeerida või assembly pole keel.
Ma ei suuda uskuda kumbagi neist järeldustest, seega on väär kas antud programmeerimiskeele definitsioon või maxoratori väide. Kipun eeldama viimast.
.Eestlane. kirjutas: |
Assembleri õppimine on lihtsalt mõistmaks kõikide keelte tagamaid. |
Selles on tublisti tõtt, sest algseks programmeerimiskeeleks oli loomulikult masinkeel (ja assembler lihtsalt selle inimloetavam variant). Assembler on muidugi väga üldine nimetaja ning hea pildi saamiseks tuleks tegelikult uurida mitmeid erinevaid masinkeeli, neiteks lisaks x86 arhitektuurile ka vanade pesamasinate omi ja moodsamaid RISC assemblereid.
Masinkeel on senini ääretult oluline osa arvutite arhitektuurist. Ning oma arvuti arhitektuuri peaks programmeerija ju ometigi mõistma. Tõesti, pole tarvis teada, täpselt millisesse masinkoodi mingi kõrgemas keeles kirjutet programm tõlgitakse, aga oluline on aru saada miks ja kuidas on üldse võimalik, et miskid klaviatuurilt sisse toksitud koodid panevad arvuti mingit toimingut tegema. Ning assembleri/masinkoodi mõistmine on selle arusaamise juures oluline lüli.
Programmeerimiskeeltega tutvudes masinkeelte välja jätmine on mu meelest umbes nagu loomadega tutvudes selgrootute väljajätmine.
Ma ei taha siinkohal väita, et iga endast lugupidav programmeerija peaks tundma end kodus ka assembleri vallas - sugugi mitte. Suurem osa enamikest masinkeeltest on tobedad masinaspetsiifilised detailid. Olulisem osa on mõista masinkeeli kui selliseid.
_________________ Mõistus otsas? Pane pinusse...
viimati muutis nene 19.10.2009 23:28:53, muudetud 1 kord |
|
Kommentaarid: 24 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
1 :: |
23 |
|
tagasi üles |
|
 |
Ho Ho
HV Guru

liitunud: 16.02.2002
|
19.10.2009 23:28:47
|
|
|
Masinkoodi kanantab hexeditoriga otse kirjutada. Kas see on programmeerimiskeel? :-p
Assembleri mõningane tundmine on igati hea. Valdavalt küll suudavad vähegi adekvaadsed kompilaatorid ka väga osava progeja koodi madalal tasemel paremini opitmeerida, kui progeja ise. Sellisel puhul tasub lasta kompilaatoril väljastada ASM ning see üle vaadata, ehk saab asja veelgi paremaks teha. Otse nullist assembleri kirjutamine on üldiselt üsna mõttetu tegevus ning loob aeglasema koodi. Praktiliselt alati annab kõrgemal tasemel andmestruktuuride-algoritmidega mängides oluliselt suuremaid võite saada kui käsitsi käskude järjekordi muutes.
_________________ Teach a man to reason and he'll think for a lifetime
Common sense - so rare that it's a damn superpower
Vaadates paljude inimeste sõnavõtte siin ja mujal jääb üle ainult klassikuid tsiteerida - "I weep for humanity" |
|
Kommentaarid: 106 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
1 :: |
86 |
|
tagasi üles |
|
 |
tooner
HV vaatleja
liitunud: 07.05.2009
|
19.10.2009 23:54:28
|
|
|
Ohoo, tuliseks aruteluks on läinud
Njah, ega ma ei vaidlegi vastu, et masina arhitektuuri tundmine kasuks ei tule... väga hea (võibolla isegi möödapääsmatu) on, kui progeja teab, kuidas ta andmestruktuurid mälus välja näevad ja ta nendega manipuleerida oskab. Aga masinkoodi debugimine on ikka suht ebatavaline sündmus, seda ka sardprogeja jaoks.
|
|
Kommentaarid: 1 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
1 |
|
tagasi üles |
|
 |
HacaX
HV Guru

liitunud: 22.01.2004
|
20.10.2009 20:50:12
|
|
|
Ho Ho kirjutas: |
Masinkoodi kanantab hexeditoriga otse kirjutada. Kas see on programmeerimiskeel? :-p [...] |
Kui sa masinkoodi mõistad siis muidugi. Lõpptulemuses - programmis - ei muuda see ju midagi kas sa trükid sisse assemblerkoodi ja siis kompileerid selle käivitatavaks vormiks, või sisestad otse kompileeritud kujul
Omalt poolt muidu nõustuks, et assemblerist ettekujutus võiks süsteemiprogejatel olla, kahjuks süsteemi siseelu tundmine (mis assembleri mõistmisega paratamatult kaasa tuleb) kindlasti ei ole.
_________________ IMO & GPLed |
|
Kommentaarid: 24 loe/lisa |
Kasutajad arvavad: |
   |
:: |
1 :: |
0 :: |
22 |
|
tagasi üles |
|
 |
pisi
HV vaatleja

liitunud: 14.08.2003
|
24.10.2009 11:44:24
|
|
|
Jah, tõeline vana programmeerija pritsib puhast kahendkoodi, kutsutagu seda algajate poolt assembleriks või kuidas iganes. Can YOU whistle 300 baud?
|
|
tagasi üles |
|
 |
andreie
HV vaatleja

liitunud: 09.09.2006
|
28.10.2009 11:43:00
|
|
|
.Eestlane. kirjutas: |
ärge hulluks minge |
Just nimelt, kui inimene oskab ainult assemblerit, siis kuidas ta tänapäeval midagi valmis programmeeriks?
_________________ Unix survives only because everyone else has done so badly. |
|
Kommentaarid: 5 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
5 |
|
tagasi üles |
|
 |
i8080
Kreisi kasutaja

liitunud: 15.03.2002
|
28.10.2009 12:00:44
|
|
|
pisi kirjutas: |
tõeline vana programmeerija pritsib puhast kahendkoodi |
õige tähelepanek mu avatar sellele puhtjuhuslikult viitabki...
... ja seal programmi esimene käsk 0x76 on muideks HALT
|
|
Kommentaarid: 169 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
151 |
|
tagasi üles |
|
 |
pisi
HV vaatleja

liitunud: 14.08.2003
|
29.10.2009 00:22:33
|
|
|
andreie kirjutas: |
.Eestlane. kirjutas: |
ärge hulluks minge |
Just nimelt, kui inimene oskab ainult assemblerit, siis kuidas ta tänapäeval midagi valmis programmeeriks? |
Ungari ühel ägedal bändil on lugu programmeerijatest. Selle refrääniks:
10 PRINT "STUPID"
20 GOTO 10 |
See võiks isegi "kahe käe sõrmede" baitidega tehtav olla
_________________ pisi - maailmaparandaja ja muidumees |
|
tagasi üles |
|
 |
Aruta
HV vaatleja
liitunud: 29.10.2009
|
29.10.2009 01:42:28
|
|
|
Tore et te veel assemblerit mäletate.
1968. arvutiga suhtlust alustades sai kirjutada ainult
8-ndarve ja registreid ja hüpped tuli sõnades ära lugeda.
(baidi mõistet veel kasutuses ei olnud).
50xxxx oli loe
51yyyy salvesta
52zzzzz liida
jne
Kui võtsid kätte perfolindi, siis lugesid rahulikult mida programm teeb ja
harva pidid vaatama mõnda koodi.
Siis tuli assembler.
Seal olid
1. muutujad.
2. märgendid
olid:
mov
add jne
Oli lihtsam.
Kui vaja oli, siis võisid kirjutada macro ja see tegi siis sul elu veel lihtsamaks.
MASM-32 jooksis veel hiljuti Windows 95 peal.
Seal oli palju näidiseid ja vajadusel võisid kasutada ka C funktsioone.
85-90 sai kirjutada juba tavaliselt C all.
Aga näiteks teksititöötluse 1,2 MB pikuses programmis
tuli korduvalt vigu parandada ja see käis debugeri koodi baasil.
parandatud sai umbes paarsada kohta aga alati oli nii et:
1. otsisid vea ülesse.
2. surusid sealkandis programmi kokku, 10 -20 30 baiti ja
3. kirjutasid sinna paranduse, mis auku lahedalt ära mahtus
Ja siis tuli kirjutada PARANDAJA.
See oli programm, mis luges sisse originaalprogrammi ja paranduste faili,
otsis ülesse vigased kohad ja vahetas baidid ära.
Süntaks umbes nii et:
*vana lõik aaaaaa*uus bbbbbb*
iga rea esimene bait oli eraldaja - kasuta mida tahad, ise tead.
Koostöös juristidega sai uuritud, kas selline tegevus on legaalne.
Tulemus oli, et keegi ei öelnud ei ega jah. Põhivastus oli et vaatame, uurime ja siis ütleme.
Seda ütlemise aega ei tulnudki.
95. aastaks oli sama tekstitöötluse uus versioon kasvanud juba 7 MB suuruseks.
Juurde oli tulnud võimalus et tabel tehti ühe nupuga.
Osa vigu oli parandatud, osa oli vanu ja osa uusi oli lisandunud.
____
Kui ma nüüd möödunud nädalal katsusin saada käima USB to LPT kaablit
(8 bitti korraga käes on ju ilus!)
ja selleks netist vabavara jupi leidsin, siis see VC oli kenast asm lõike täis.
Samas räägitakse et Ülikoolis olla loobutud tudengitele hex arve õpetamast.
Et polevat elus enam vaja.
Aga nii meie assembleriga elasime.
Siis.
|
|
tagasi üles |
|
 |
Deadlock
Kreisi kasutaja
liitunud: 16.07.2004
|
29.10.2009 14:06:18
|
|
|
Aruta kirjutas: |
Samas räägitakse et Ülikoolis olla loobutud tudengitele hex arve õpetamast.
|
Viimased progemisained nüüd see semester käsil ja pole tõesti ette tulnud..
|
|
Kommentaarid: 8 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
virus152
HV vaatleja

liitunud: 05.03.2009
|
29.10.2009 14:14:52
|
|
|
Aruta kirjutas: |
Samas räägitakse et Ülikoolis olla loobutud tudengitele hex arve õpetamast.
|
Hex arve nagu 16-ndsüsteemi?
|
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
 |
Deadlock
Kreisi kasutaja
liitunud: 16.07.2004
|
29.10.2009 14:18:28
|
|
|
virus152 kirjutas: |
Aruta kirjutas: |
Samas räägitakse et Ülikoolis olla loobutud tudengitele hex arve õpetamast.
|
Hex arve nagu 16-ndsüsteemi? |
Ma usun, et pigem nende semantilist tähendust protsessori jaoks vms..
|
|
Kommentaarid: 8 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
8 |
|
tagasi üles |
|
 |
Aruta
HV vaatleja
liitunud: 29.10.2009
|
29.10.2009 17:47:04
|
|
|
See hexa lugu oli umbes nii.
Saime hommikul metsa vahel kokku ühe vana tuttava Ülikooli poisiga.
Mõtlesin, et küsin nõu, et millega NEMAD exe failidest vigu otsivad.
Vastab: Meie ei otsigi.
K: Kuidas te siis saate?
V: (Laiutab käsi.)
K: Noh aga ilma ju ei saa!
V: Ahh, me ei õpeta enam tudengitele kuusteistsüsteemis numbreid kah.
Vat umbes selline jutuajamine oli.
Ma siis enam ei küsinud et kas Hemmingi kood ikka kuskil veel kasutuses on.
Et kas nad seda ikka õpetavad.
|
|
tagasi üles |
|
 |
virus152
HV vaatleja

liitunud: 05.03.2009
|
29.10.2009 18:13:57
|
|
|
See arvusüsteemide jutt on küll jama. Sissejuhatava programmeerimiskursuse esimeses tahvlipraksis hakati neid õpetama, kes varem ei osanud. Pearõhk oli küll kahendsüsteemil, aga ka 8-nd ja 16-ndsüsteem vaadati eraldi üle. Kuigi minul oli arvusüsteemide teema juba gümnaasiumis ära, kui mitte varem ja ma usun, et teistel oli ka.
Exe-de töötlemise kohta ei tea täpselt, aga mõne valikaine temaatikas arvatavasti ikka on.
|
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
 |
Ho Ho
HV Guru

liitunud: 16.02.2002
|
29.10.2009 18:14:13
|
|
|
"Vanasti" umbes 4-5a tagasi õpetati TTÜ's base 2/8/16/n süsteeme diskreetse matemaatika loengutes. Olles käinud kokku neljas erinevas progemisloengus siis kolm neist olid üksteise koopiad eri keeltes ja neljas ei jõudnud isegi keskkooli taseme maakondliku progemisolümpiaadi ülesannete tasemele.
_________________ Teach a man to reason and he'll think for a lifetime
Common sense - so rare that it's a damn superpower
Vaadates paljude inimeste sõnavõtte siin ja mujal jääb üle ainult klassikuid tsiteerida - "I weep for humanity" |
|
Kommentaarid: 106 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
1 :: |
86 |
|
tagasi üles |
|
 |
|