Indeks English version English version

Elektronika MK-90 - formaty danych

Liczby na tej stronie są w kodzie szesnastkowym, chyba że zanaczono inaczej.


Kody i wzory znaków alfanumerycznych

Znaki są kodowane zgodnie ze standardem KOI-7.

Znaki o kodach w zakresie 20-3F

znaki alfanumeryczne

Znaki alfabetu łacińskiego (zestaw N0), kody w zakresie 40-7F

Znaki alfabetu łacińskiego

Cyrylica (zestaw N1), kody w zakresie 40-7F

Cyrylica

Rysunek został wygenerowany programowo na podstawie danych wyciągniętych z pamięci ROM.


Reprezentacja liczb zmiennoprzecinkowych

Liczba zmiennoprzecinkowa zajmuje trzy słowa 16-bitowe. Pierwsze dwa słowa zawierają 32-bitową mantysę w kodzie uzupełnienia do dwóch. Wykładnik w kodzie z przesunięciem 0x8000 zajmuje trzecie 16-bitowe słowo. Przykłady:

Liczba Kodowanie
0
1
10
100
255
1000
65535
0.5
0.125
0.1
0.001
-1
-10
-0.1
0000 0000 0000
0000 4000 8001
0000 5000 8004
0000 6400 8007
0000 7F80 8008
0000 7D00 800A
8000 7FFF 8010
0000 4000 8000
0000 4000 7FFE
6666 6666 7FFD
374B 4189 7FF7
0000 C000 8001
0000 B000 8004
999A 9999 7FFD

Obiekty obszaru roboczego

Zmienna lub tablica

    1 słowo     bity 15-13: identyfikator 000
                bity 11-6:  pierwsza litera nazwy ('A'=00, 'B'=01, ...)
                bity 5-0:   druga litera nazwy (cyfra w kodzie ASCII)
    1 słowo     maksymalny pierwszy indeks w górnym bajcie,
                maksymalny drugi indeks w dolnym bajcie,
                zero gdy prosta zmienna
    3 słowa     pierwsza wartość
    3 słowa     druga wartość
    ...
    3 słowa     ostatnia wartość

Przykłady:

    0600 0000           prosta zmienna X
    0000 6400 8007      wartość=100

    0675 0000           prosta zmienna Y5
    0000 6400 8008      wartość=200

    0440 0300           jednowymiarowa tablica DIM Q(3)
    3333 B333 7FFF      wartość Q(0)=-0.3
    6666 6666 7FFC      wartość Q(1)=0.05
    0000 7FFC 800D      wartość Q(2)=8191
    0000 8004 800D      wartość Q(3)=-8191

    06B1 0102           dwuwymiarowa tablica DIM Z1(1,2)
    9400 7735 801E      wartość Z1(0,0)=1E9
    2F9E 44B8 7FE3      wartość Z1(0,1)=1E-9
    6C00 88CA 801E      wartość Z1(0,2)=-1E9
    D062 BB47 7FE3      wartość Z1(1,0)=-1E-9
    0000 4000 8010      wartość Z1(1,1)=32768
    0000 C000 8010      wartość Z1(1,2)=-32768

Struktura GOSUB

    1 słowo     bity 15-13: identyfikator 001
                bity 12-0:  numer wiersza zawierającego operator GOSUB

Struktura FOR

    1 słowo     bity 15-13: identyfikator 010 
                bity 11-0:  nazwa zmiennej sterującej
    1 słowo     addres za znakiem '=' w operatorze FOR
    3 słowa     wartość TO
    3 słowa     wartość STEP

Funkcja zdefiniowana przez użytkownika

    1 słowo     bity 15-13: identyfikator 011
                bity 7-0:   trzecia litera nazwy funkcji (ASCII)
    1 słowo     bity 11-0:  nazwa zmiennej będącej argumentem funkcji
    1 słowo     addres wyrażenia arytmetycznego