Keresés

Új hozzászólás Aktív témák

  • Jester01

    veterán

    válasz AlapVaj #285 üzenetére

    Foglalsz valamennyi helyet, ennek a módja attól függ melyik assemblert használod. Pl.:

    szo1: .dd 0,0,0,0,0,0,0,0

    Innentől kezdve az n. betű értelemszerűen szo1+n helyen van (0-val indexelve)
    Beolvasásnál tehát nincs más dolgod, mint szépen sorban elrakni a betűket amíg szóközt vagy entert nem kapsz.
    Például:

    MOV DI, OFFSET szo1
    KOV:
    CALL OLVAS
    CMP AL, 10
    JE VEGE
    CMP AL, 13
    JE VEGE
    CMP AL, 32
    JE VEGE
    STOSB
    JMP KOV
    VEGE:

    Ebből aztán csinálhatsz általános beolvasó rutint ha akarsz, ami mondjuk megkapja a buffert és a méretet majd visszaadja a beolvasott betűk számát. Továbbá a speciális billentyűkódokat is kezelni kell (azt hiszem azok először nullát adnak és kell még egy olvasás) és a buffer túlcsordulás sem egészséges.

    Jester

Új hozzászólás Aktív témák