Welcome, Guest. Please login or register.


Author Topic: Assembly programozás (Read 254722 times)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #945 on: 2015.October.08. 11:15:23 »
Szerintem egy fórumon nem "vérciki" kérdezni
Szerintem sem. Én még emlékszem milyen volt kezdőnek lenni.

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Assembly programozás
« Reply #946 on: 2015.October.08. 16:55:53 »
Quote
Szerintem egy fórumon nem "vérciki" kérdezni, de igazad van; ez az én szoc problémám...

Á, csak ergoGnomik mindíg morog, fene tudja miért ... már rám is rámpirított párszor, de nem baj, nézzük a jó oldalát: legalább hozzáteszi ő is amije van.
Z80 System

Offline ergoGnomik

  • EP addict
  • *
  • Posts: 1291
  • Country: hu
  • Stray cat from Commodore alley
Re: Assembly programozás
« Reply #947 on: 2015.October.08. 18:43:32 »
OFF

Ez tényleg egy rossz szokásom, de néha nem bírok magamba fojtani ilyen kis hülyeségeket. Olvasom sanyike kérdését, ami alapján úgy véltem hogy gépi kódú programozásban azért tudja miről van szó. Na mármost, engem aztán még csak véletlenül sem lehet lángelmének (sőt, igazából még csak hozzá valamicskét konyítónak sem) nevezni, de azért annyit elég minimális energia befektetéssel sikerült már korábban megtudnom hogy mi az eljárás. Ebből sikerült arra az utólag tévesnek bizonyult következtetésre jutnom hogy megint valaki túl lusta.

Aztán persze még ott van az a kérdés hogy pontosan kinek a problémája a pontosan micsoda, de azt már tényleg felesleges feszegetni. Így is sikerült éppen elég felesleges értetlenséget (mivel nem volt világos mi a fene bajom van) és némi rosszallást fakasztanom a társaságban. Egyébként én is voltam "kezdő", és amikor sikerült orbitális hülyeséget vagy teljesen nyilvánvalót kérdeznem, akkor (legalább utólag) bizony elég kényelmetlenül éreztem magamat.

Még egyszer bocsi, bár én magam szoktam mondogatni hogy az emberi nyelvekben a legfeleslegesebb dolgok azok a szavak és kifejezések amivel utólag próbáljuk elsimítani a bántásokat és sértéseket, mivel azok már úgy is megmaradnak a lélekben, azokat a legőszintébb szó sem képes csak úgy nyomtalanul kitörölni.

Remélem legközelebb sikerül leülni egy sarokba és megvárni amíg elmúlik az újabb ilyen késztetés.


/OFF
« Last Edit: 2015.October.09. 11:47:19 by ergoGnomik »

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Assembly programozás
« Reply #948 on: 2015.October.08. 19:08:06 »
Mindenki mindig morog ... Én azt mondom, nem isznak a népek rendesen ! :)

Deci vörös, vagy 2 deci Ballantines, és máris mosolyog a nép ...
Z80 System

Offline sanyike

  • User
  • *
  • Posts: 99
  • Country: hu
Re: Assembly programozás
« Reply #949 on: 2015.October.08. 21:08:46 »
Ebből sikerült arra az utólag tévesnek bizonyult következtetésre jutnom hogy megint valaki túl lusta.



Nem lusta csak türelmetlen! :D

Na jó elismerem; ebben azért van egy kis igazad...

:smt006

Offline sanyike

  • User
  • *
  • Posts: 99
  • Country: hu
Re: Assembly programozás
« Reply #950 on: 2015.October.08. 21:11:57 »
... Én azt mondom, nem isznak a népek rendesen ! :)



Na erre igyunk!

:smt030

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Assembly programozás
« Reply #951 on: 2015.October.12. 19:31:50 »
Az EP emu-ba érdekes lenne egy ilyen statisztikát számoló részt belerakni...

[ Guests cannot view attachments ]

A debuggerben "Run" és aztán "Step" futtatja, minden 1000000. utasításnál kiírja a 10 leggyakoribb utasítás kódját, és hogy hányszor fordult elő.

Offline Povi

  • EP addict
  • *
  • Posts: 2296
  • Country: hu
    • http://povi.fw.hu
Re: Assembly programozás
« Reply #952 on: 2015.October.13. 16:06:13 »
(Attachment Link)

A debuggerben "Run" és aztán "Step" futtatja, minden 1000000. utasításnál kiírja a 10 leggyakoribb utasítás kódját, és hogy hányszor fordult elő.

Hű, nagyon jó! :-)

Messze vezet az OR A!
*** Speicherplatz zu klein

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Assembly programozás
« Reply #953 on: 2015.October.15. 19:30:09 »
Na, néztem ezt a sjasm -ot tovább.

Érti valaki hogy a cimkék hierarchizálása miért pont három szintű ?

Én eddig azt hittem, hogy akárhány szinten lehet a cimkéket hierarchizálni.

Ehelyett az van hogy vannak a module -ok (melyeket úgy tűnik kizárólag a cimkék hierarchizálásához vezettek be),
ezekhez relatívak (mely nem az értékük kiszámítását jelöli, csak simán a cimke névütközések feloldásával kapcsolatos) az ugynevezett "globális" cimkék,
és vannak a relatív cimkék, melyek pedig az előző globális cimkéhez képest relatívak.

Tehát a modulnevek globálisak, egymáshoz képest NEM! relatívak,
ezekhez relatívak a "globális" cimkék,
és a globális címkékhez képest pedig a lokális cimkék.

És passz.

De miért ? Ha már van relatív cimkenévfeloldás (és nem számítás!), akkor miért nem bízzák rám hány hierarchiaszintet akarok felvenni a cimkéimnél ?!
Z80 System

Offline ergoGnomik

  • EP addict
  • *
  • Posts: 1291
  • Country: hu
  • Stray cat from Commodore alley
Re: Assembly programozás
« Reply #954 on: 2015.October.15. 20:23:03 »
Paraszt ésszel azt gondolnám, hogy ennek valami a fordító felépítésében gyökerező oka lehet. Például a neveket nem valamilyen fastruktúrában tárolja, hanem három vektorban. De miért zavar ez téged? Miféle "perverzióra" készülsz amihez elengedhetetlen a tetszőleges mélységben egymásba ágyazható névminősítés? :) Nekem már az is elég rondának tűnik amikor három mélységben kell egy programban valamilyen objektumra hivatkozni és még esetleg a hivatkozás típusa sem azonos. Mondjuk ez utóbbi az sjasm esetében ki van zárva.

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Assembly programozás
« Reply #955 on: 2015.October.15. 20:37:12 »
Quote
Miféle "perverzióra" készülsz

Egyszerűen keresném a megoldást a kényelmes névválasztásra. Szeretnék valami ilyet:



Function0:

    LoopExt:

        LoopInt:

            LoopIntInt:

            jr LoopIntInt

        jr LoopInt

    jr LoopExt

    ret



Function1:

    LoopExt:

        LoopInt:

            LoopIntInt:

            jr LoopIntInt

        jr LoopInt

    jr LoopExt

    ret


Z80 System

Offline geco

  • EP addict
  • *
  • Posts: 7085
  • Country: hu
    • Támogató Támogató
Re: Assembly programozás
« Reply #956 on: 2015.October.15. 20:39:15 »
Tegyél pontot a functionx alatti címkék elé, és a jr utasításban is a .-tal kiegészített címkét használd.
.Loopint:
.
.
.
   jr .Loopint

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Assembly programozás
« Reply #957 on: 2015.October.15. 20:44:51 »
Quote
Tegyél pontot a functionx alatti címkék elé, és a jr utasításban is a .-tal kiegészített címkét használd.

A . csak relatívvá tesz egy cimket (cimke nevet). A relatív cimke pedig csak az előtte álló globális cimkéhez képest lesz relatív. Az előtte álló relatív cimkéhez képest nem.

Vagyis csak 3 szinten megoldás a module-globaliscimke-relativcimke hierarchikus szerkezet. Én meg nem 3 szinten szeretném szervezni (egyszerűsíteni, nem globálisan adni meg) a cimkéimet, hanem tetszőleges szinten.
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Assembly programozás
« Reply #958 on: 2015.October.15. 20:48:46 »
Milyen hulyeség ez a 3 ? Miért pont 3 ? Miért nem 2 vagy 7 ? Hol vagyunk az őskorban ? Biztos van itt vmi okosság, amit nem értek ...

Ha nem akarják megoldani hogy legyenek "névterek" akkor ne oldják meg, legyen minden globális és kész. Értem hogy minden globális.

Ha meg kezelni akarják a névterek kérdését, akkor kezeljék teljes mélységben, a programíró majd eldönti hány szinten akar hierarchizálni (akarja ágyazni a névtereit).

De csinálni névtereket, de csak három szinten ... ezmiarák ?


Kell itt lennie vmi okosságnak amit még nem értek ...
Z80 System

Offline geco

  • EP addict
  • *
  • Posts: 7085
  • Country: hu
    • Támogató Támogató
Re: Assembly programozás
« Reply #959 on: 2015.October.15. 20:53:03 »
a 3 pont csak a ... akart lenni :ds_icon_cheesygrin:
A lényeg az, hogy a lokális címkéd elé tegyél pontot, az teszi lokálissá, és ha egy globális címke alól akarsz egy másik globális címke lokális címkéjére ugrani, akkor globális.lokális megadással megy az ugrás.