Muisti : funktiot

MAKEMEMBLOCK


   KUVAUS

Varaa muistia ja luo siitä muistipalan, johon käyttäjä voi kirjoittaa ja lukea tietoa.

Muistipaloja käytetään nopeisiin operaatioihin (esim. tiedontiivistys) ja parametrien välittämiseen DLL-tiedostoille.

  • Tietokoneen muisti on pitkä pötkö bittejä. Ne ovat muistin perusyksiköitä ja pienimpiä mahdollisia tietolokeroita.
  • Bitti voi olla joko nolla tai yksi.
  • Yksi tavu koostuu kahdeksasta bitistä. Kahdeksan bitin jonosta voidaan muodostaa 256 erilaista yhdistelmää, joten erilaisia tavuja on olemassa 256 kappaletta. Niiden numerointi menee 0-255.
  • Yksi merkki on yksi tavu. Siten esim. ASCII-merkistössä on 255 erilaista merkkiä/kirjainta + ns. nollamerkki.
  • Jokaisella tavulla on ns. muistiosoite. Niiden avulla muuttujien arvoja tallennetaan ja luetaan muistista. Muuttuja on siis ikään kuin muistilappu, joka sisältää muuttujalle varatun muistipaikan.

    CoolBasicin avulla varattuun muistiin voidaan kirjoittaa tavuja, kahdenlaisia kokonaislukuja sekä desimaalilukuja. Huomaa, että kun kirjoitat/luet tietoa, ensimmäinen paikka on nolla ja viimeinen KOKO-1.

    On myös tärkeää pitää huoli siitä, että et kirjoita varatun muistialueen ulkopuolelle. Se saattaa kaataa ohjelman tai jopa koko järjestelmän.

  •    KÄYTTÖ
    MAKEMEMBLOCK (koko)

  • koko = Muistipalan koko tavuina. Positiivinen kokonaisluku.

  • Katso myös: POKEBYTE, POKEINT, POKEFLOAT, PEEKBYTE, PEEKINT, PEEKFLOAT

       ESIMERKKI
    'Reserve memory for 8 bytes.
    'It's big enough to store two integer numbers.
    mem=MakeMEMblock(8)

    PokeInt mem,0,8 'write number 8 at the beginning
    PokeInt mem,4, -67 'write another number after the first one

    Text 10,10,PeekInt(mem,0) 'read the first integer and print it
    Text 10,30,PeekInt(mem,4) 'read the second integer and print it

    DrawScreen

    WaitKey

    DeleteMEMblock mem 'free the memory we used

    <<TAKAISIN