Білім беру бағдарламасы: 6 B01506 Информатика Құрастырушылар : Амантурлина Г. К. аға оқытушы



жүктеу 430,16 Kb.
бет21/47
Дата13.12.2022
өлшемі430,16 Kb.
#40599
түріБілім беру бағдарламасы
1   ...   17   18   19   20   21   22   23   24   ...   47
Силлабус ИТН (копия)

Мысалдар. Қосымша кодтарға сәйкес келетін сандарды жазайық:
а) 0000000000010111. Үлкен разрядта ноль жазылғандықтан нәтиже оң болады. Бұл 23 санының коды.
б) 1111111111000000. Мұнда теріс санның коды жазылған. Алгоритмді орындаймыз:
1) 1111111111000000(2) – 1(2) = 1111111110111111(2);
2) 0000000001000000; 3) 1000000(2) = 64(10).
Жауап: –64.
Дербес компьютердің жадысында нақты сандарды көрсету үшін басқадай тәсіл қолданылады. Жылжымалы үтірлі шамаларды көрсетуді қарастырамыз:
Кез-келген нақты санды M × 10p, где 1 £ M < 10 стандартты түрде жазуға болады, мұндағы 1 £ M < 10, p — бүтін. Мысалы, 120100000 = 1,201 × 108. Ондық санның әр позицицясы көршісінен 10 санының дәрежелеріндей айырмашылығы болатындықтан, 10-ға көбейту ондық үтірді бір позиция оңға жылжытуға эквивалентті. Осылайша 10-ға бөлу ондық үтірді бір позиция солға жылжытуға пара-пар. Сондықтан жоғарыда келтірілген мысалды жалғастыруға болады. 120100000 = 1,201 × 108 = 0,1201 × 109 = 12,01 × 107¼. Ондық үтір санда «жылжиды» және санның бүтін және бөлшек бөліктеріндегі абсолютті орны белгіленбеген.
Жоғарыда келтірілген жазбада М-ді санның матиссасы деп, ал p – оның реті деп аталады. Максималды дәлдікті сақтау үшін есептеуіш машиналар мантиссаны үнемі дерлік нормальданған түрде сақтайды, бұл мантисса осы жағдайда 1(10) и 2(10) (1 £ M < 2).. аралығында жататын сан дегенді білдіреді. Мұнда санау жүйесінің негізі 2 саны. Жылжымалы үтірлі мантиссаны сақтау тәсілі екілік үтірдің бекітілген орында тұрғанын білдіреді. Шын мәнісінде екілік үтір бірінші екілік цифрдан кейін тұрады, яғни, мантиссаны нормальдау бірінші битті жалғыздайды, осымен мәнді 1 мен 2-нің аралығына орналастырады. Жылжымалы нүктелі санға берілген орын екі өріске бөлінеді. Бір өріс мантиссаның таңбасы мен мәнінен тұрады, келесісі ретінің таңбасы мен мәнінен түрады.
Математикалық соопроцессоры бар IBM PC дербес компьютері келесі нақты сандармен жұмыс істеуге мүмкіндік береді (мәндердің диапазоны абсолютті шама бойынша көрсетілген):

Типі

Диапазоны

Мантиссасы

Байттар

Real

2,9 × 1039..1,7 × 1038

11–12

6

Single

1,5 × 10–45..3,4 × 1038

7–8

4

Double

5,0 × 10–324..1,7 × 10308

15–16

8

Extended

3,4 × 10–4932..1,1 × 104932

19–20

10

Нақты сандардың ЭЕМ жадысында көрсетілуіне арналған түрлендірулерін Double типті шаманың мысалында көрейік.
Кестеде көрініп тұрғандай, осы типтің шамасы жадыдан 8 байт орын алады. Суретте мантиссаның және реттің өрістерінің көрсетілуі берілген:

S

Аралас рет

Мантисса

63

52

0

Мантиссаға берілген үлкен бит 51-ші нөмір екенін, яғни мантисса 52 биттің кішілерін алады. Сызықша екілік үтірдің орнын көрсетеді. Үтірдің алдында мантиссаның бүтін бөлігінің биті түруы қажет, бірақ ол үнемі 1-ге тең болғандықтан бұл жерде осы бит қажет емес және сәйкесінше жадыда жоқ (бірақ ол ойда). Реттің мәні бұл жерде қосымша кодпен көрсетілген бүтін сан ретінде сақталмайды. Есептеулерді оңайлату және нақты сандарды салыстыру үшін реттің мәні ЭЕМ-де аралас сан ретінде сақталады, яғни, реттің осы мәніне оның жадыға жазылар алдында жылжу қосылады. Жылжу реттің минимальды мәніне ноль сәйкес келетіндей болып таңдалынады. Мысалы, Double типі үшін рет 11 бит орын алады және 2–1023-ден 21023-ге дейінгі диапазонға ие, сондықтан жылжу 1023(10) = 1111111111(2)-ге тең. Сонымен, 63 номерлі бит санның таңбасын кқрсетеді.
Осылайша, жоғарыда айтылғандардан ЭЕМ жадысында нақты сандарды көрсетуді алудың келесі алгоритмі туындайды:
1) берілген санның содулін екілік санау жүйесіне аудару;
2) екілік санды нормальдау, яғни M × 2p, түрінде жазу, мұндағы M — мантисса (оның бүтін бөлігі 1(2)-ге тең) және p —ондық санау жүйесінде жазылған рет;
3) жылжу ретіне қосу және жылжытылған ретті екілік санау жүйесіне аудару;
4) берілген санның таңбасын (0 — оң; 1 — теріс) ескере отырып, оның ЭЕМ жадысында көрсетілуін жазу.
Мысал. –312,3125 санының кодын жаз.
1) Осы санның модулінің екілік жазбасы: 100111000,0101.
2) 100111000,0101 = 1,001110000101 × 28.
3) аралас рет аламыз 8 + 1023 = 1031. Осыдан, 1031(10) = 10000000111(2).
4) Соңғысы

1

10000000111

0011100001010000000000000000000000000000000000000000

63

52

0

Әрине алынған кодты неғұрлым шағын түрде келесідей жазуға болады: C073850000000000(16).
Келесі мысал нақты санның кодынан керісінше санның өзіне өтуді қарастырады.
Мысал. Айталық, келесі код берілсін: 3FEC600000000000(16) немесе

0

01111111110

1100011000000000000000000000000000000000000000000000

63

52

0

1) Алдымен оның оң санның коды екенін байқаймыз, себебі 63 нөмірлі разрядта ноль жазылған. Осы санның ретін алайық: 01111111110(2) = 1022(10); 1022 – 1023 = –1.
2) сан мына түрге ие: 1,1100011 × 2–1 немесе 0,11100011.
3) ондық санау жүйесіне аударып, келесіні аламыз: 0,88671875

жүктеу 430,16 Kb.

Достарыңызбен бөлісу:
1   ...   17   18   19   20   21   22   23   24   ...   47




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау