Bevezetés a számítástechnikába Beadandó feladat, kódrendszerek Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010 október 12.
Beadandó feladat Beadandó feladat Beadandó feladat Készítsen programot amely 2 BCD-ben magadott valós szám között megvalósítja a 4 alapműveletet. A számításokhoz csak egész (maximum 32 bites) típusú változók használhatóak fel. A megadott számok maximum 50 számjegyet tartalmazhatnak. Nem lehet aritmetikai hiba a művelet elvégzése közben. A megoldásnak tartalmaznia kell a program megfelelő dokumentációját Az első 10 helyes megoldást tudjuk csak értékelni A bemeneti adatok egy TXT file-ban találhatóak (input.txt): 1. sorban a művelet első argumentuma 2. sorban a művelet második argumentuma 3. sorban a műveletnek megfelelő karakter (+, -, *, /) A program irja ki egy TXT file-ba (output.txt) a művelet eredményét. Például: ( Bemenet: input.txt ) 8.00001-0.00001 + Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 2 / 17
Angol ABC betűi (kis és nagy), vezérlőkarakterek, számjegyek, írásjelek, adatátviteli vezérlőjelek Nemzetközi szabvány EBCDIC (Extended Binary Coded Decimal Interchage Code) ASCII (American Standard Code-for Information Interchage) Ékezetes karakterekkel + ciril karakterekkel egészült ki: EBCDIC OKOI ASCII KOI8 (7 biten ASCII ) Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 3 / 17
Vezérlő karakterek NUL = null karakter SOH = start of header STX = start of text ETX = end of text EOT = end of transmission ENQ = eniquiry (lekérdezés) ACK = acknowledge (nyugtázás) BEL = csengetés BS = backspace HT = horizontal tab VT = vertical tab LF = soremelés FF = lapemelés CR = kocsi vissza Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 4 / 17
Vezérlő karakterek 2 SO = shift out SI = shift in DEL = törlés DLE = data link exchange control DC1-DC4 = device control 1-4 NAK = negatív nyugtázás SYN = syncrous idle ETB = end of transmission box CAN = cancel EM = end of media ESC = escape SUB = substitute Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 5 / 17
Szeparátor karakterek FS (fájlelválasztó) GS (csoport elválasztó) RS (record separator) US (unit separator) Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 6 / 17
Relációs karakterek < > = Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 7 / 17
Kódtáblák Az ASCII (American Standard Code for Information Interchange) Karakterkészlet és karakterkódolási szabvány A latin ABC-n alapul és az angol nyelvben és sok nyugat-európai nyelvben használatos betűket tartalmazza EBCDIC (Extended Binari Coded Decimal Interchange Code) rendszert az IBM alakította ki 1963 és 1964 között IBM System/360 rendszerekkel együttesen került bejelentésre A már létező, binárisan kódolt decimális kódrendszer bővítése volt A tervezése az ASCII-tól teljesen függetlenül történt Az EBCDIC 8-bites kódolású kód, szemben a 7-bites ASCII-vel DKOI Ciril karakterkészlet támogatása EBCDIC KGST-s megfelelője KOI-8 Ciril karakterkészlet támogatása ASCII KGST-s megfelelője Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 8 / 17
Kódtáblák Unicode különböző írásrendszerek egységes kódolását és használatát leíró nemzetközi szabvány nem csak a kódolással, hanem a karakterek osztályozásával, megjelenítésével és használatával is részletesen foglalkozik A szabvány 16 biten tárolt síkokra osztja kódtáblát, a szabvány legutóbbi változatában rögzített mintegy 100 ezer karaktert Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 9 / 17
ASCII kódtábla (7 bit) Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 10 / 17
ASCII kódtábla kibővítése Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 11 / 17
EBCDIC kódtábla Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 12 / 17
EBCDIC kódtábla 2 Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 13 / 17
ASCII és a EBCDIC kódtábla összehasonlítása Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 14 / 17
KOI-8 ASCII KGST-s megfelelője Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 15 / 17
DKOI EBCDIC KGST-s megfelelője Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 16 / 17
Műveletek karakterekkel A karakterek ASCII kódja alapján lehet végezni műveleteket Programozási igény Melyik szám nagyobb Melyik karakter áll előbb az ABC-ben Az elvégezhető művelet adattípus függvénye fixpontos szám lebegőpontos szám karakterenként kódolt (BCD, ASCII, EBCDIC) string Stringek összehasonlításánál kódérték összehasonlítása: ha két érték azonos hosszúságú, akkor a rövidebb a kisebb Fodor Attila (Pannon Egyetem) Bevezetés a számítástechnikába 2010 október 12. 17 / 17