2.6. Компьютерлік жүйелердегі деректерді ұсыну

Деректер мен нұсқауларды адам тілін қолдана отырып, компьютерлерге тікелей енгізу және өңдеу мүмкін емес. Сандар, әріптер, арнайы таңбалар, дыбыс немесе кескіндер болсын, кез келген деректер түрі алдымен машинада оқылатын пішінге, яғни екілік пішінге түрлендірілуі керек. Осы себепті компьютер өзінің перифериялық құрылғыларымен бірге электронды схемаларда, магниттік медиада және оптикалық құрылғыларда деректерді қалай өңдейтінін түсіну маңызды

Микропроцессор сияқты электрондық компоненттер миллиондаған электрондық схемалардан тұрады. Бұл тізбектерде жоғары кернеудің болуы (қосу) «1» деп түсіндіріледі, ал төмен кернеу (өшіру) «0» деп түсіндіріледі. Бұл ұғымды электр тізбегін қосу және өшірумен салыстыруға болады. Ажыратқыш жабылған кезде, тізбектегі жоғары кернеу шамның жануына әкеледі («1» күйі, екінші жағынан, қосқыш ашық болғанда, шам өшеді («0» күйі). Бұл екілік санау жүйесін қолданатын цифрлық компьютерлердегі мәліметтерді көрсетуді сипаттауға негіз болады.

Биттер мен байттар

Екілік есептеуді қолдана отырып, деректерді ұсыну

Деректердің бір бөлігі, мысалы, алфавиттің әрпі, екілік таңбалар тізбегі арқылы ұсынылуы мүмкін – «0» және «1». Символдық деректерді ұсыну үшін қолданылатын кодтардың бірнеше түрі бар – (character data). Мысалы, кеңейтілген ASCII кодын (ақпарат алмасуға арналған американдық стандартты код) қолдана отырып, «А» алфавитінің әрпін «01100001» сегіз екілік разрядтың көмегімен ұсынуға болады. Әрбір екілік бит – бит деп аталады. Сегіз бит бір байтқа тең. Кеңейтілген ASCII коды кіріс таңбаларын көрсету үшін сегіз битті (немесе бір байтты) пайдаланады. Төменде кеңейтілген ASCII кодындағы таңбалардың екілік көріністері көрсетілген (сурет. 2.25).

Барлық деректер – дыбыстық, визуалды және бағдарламаларды екілік сандар тізбегі немесе байттар тізбегі арқылы ұсынуға және сақтауға болады.  Бір сөзбен айтқанда файл – бұл компьютердегі кез келген мәліметтер жиынтығы. Кейбір файлдарда деректер биттері сөздер мен сөйлемдерді құрайтын жеке әріптерді, сандарды және тыныс белгілерін тікелей кодтайды. Басқа файлдарда, мысалы, суреттерде, біз қабылдай алатын кескіндерге түрлендіру үшін деректер биттері қайта есептелуі керек.

Көптеген қосымшалар, мысалы, Microsoft Word немесе PowerPoint, ақпаратты адам оқи алмайтын арнайы тәсілдермен кодтайды. Сонымен, Microsoft Word мәтінді өңдеу үшін жиі қолданылғанымен, Word құжатын Notepad сияқты қарапайым мәтіндік редактор дұрыс көрсете алмайды, себебі құжат Microsoft Word-қа тән форматтағы ақпаратты қамтиды. Оны оқу үшін Microsoft Word бағдарламасында ашу керек. Кейбір файлдарда компьютерге екілік деректерді оқылатын құжат формасына қайта жинауға мүмкіндік беру үшін деректерді кодтау үшін қандай формат қолданылғанын көрсететін тақырып бар.

Компьютерлік жадқа деген қажеттіліктің артуы

1970 жылдардың аяғы мен 1980 жылдардың басында арзан дербес компьютерлер шығарыла бастады және көп ұзамай үлкен тұтыну нарығы өсті.

suret_2.25.png

                                                               Сурет 2.25 ASCII коды

Бастапқыда қарапайым электрондық кесте мен мәтіндерді өңдеу үшін мыңдаған байт сияқты аз жад жеткілікті болды. Бірақ кейінірек пайдаланушылар беттерді салу және макеттеу сияқты көбірек тапсырмаларды орындауға мүмкіндік беретін бағдарламалық құралды қалайды. Пайдаланушы сұраныстары өсті, сәйкесінше есептеу мүмкіндіктеріне қойылатын талаптар өсті. Бұл сұраныс жадты кеңейтуді қажет ететін жаңа дамуға әкелді. 1980 жылдардың ортасында жад миллиондаған байтқа дейін өсті. Бүгінгі күні кеңсе мен үй компьютерлерінде миллиардтаған, тіпті одан да көп байт жады бар. Мысалы, Geographic Information System (GIS) (геоақпараттық жүйе) сияқты деректерді қарқынды пайдаланатын жүйелер үшін жад қажеттіліктері триллион байтты құрайды. Төменде 1970-ші жылдардан бастап сәйкес префикстер мен аббревиатуралармен сақтау құрылғыларының сыйымдылығын көрсететін диаграмма берілген (кесте 2.2).

 Кесте 2.2 Префикстер мен аббревиатуралармен сақтау құрылғыларының сыйымдылығын көрсететін диаграмма

 

1970-ші

1980-ші

1990-ші

2000-ші

 

Байттағы жад көлемінің реті

мыңдық

миллион

биллион

триллион

Префикс

Kilo (103)

Mega (106)

Giga (109)

Tera (1012)

Аббревиатура

K

M

G

T

 

Деректер  түріндегі  қосымша  ақпаратты  және  оларды  өңдейтін бағдарламаларды   компьютер   жадында   сақтауға  болады. Тиісінше,  сақтау

құрылғыларының сыйымдылығының өсуімен жад көлемі де артады. Сонымен қатар, компьютер жады технологиялары бірдей бағамен кішірек, жеңілірек және жылдамырақ құрылғыларды ұсынады.

 

Санау  жүйелері

Есептеу әлемі деректерді көрсету үшін бірнеше санау жүйелерін пайдаланады. Әзірге ондық жүйе, сондай-ақ 10 базалық санау жүйесі (base10) деп те аталады, адамдарға жақын, өйткені бұл күнделікті өмірде қолданылатын санау жүйесі, екілік (base2) және он алтылық (base16) – есептеуде қолданылатын негізгі санау жүйелері.

Ондық

Санау жүйелерді талқылауды позициялық сандық жүйенің мысалы ретінде ондық жүйені қарастырудан бастаймыз. Ондық санау жүйесінде он мән бар – 0, 1, 2, 3, 4, 5, 6, 7, 8 және 9. Ондық санау жүйесіндегі әрбір санды олардың санындағы "реті" (позициясы) бойынша сандарға бөлуге болады. Мысалы, 43,872 санын алатын болсақ, мұнда 2 оның 0-ші позициясында, 7 оның бірінші, 8 – екінші, 3 – үшінші, 4 – төртінші позицияда. Әрбір позиция экспоненциалды немесе ондық мәнмен ұсынылуы мүмкін мәнге ие. 2.3-кестеде 43,872 санының әр позициясы үшін экспоненциалды және ондық көрініс көрсетілген.

Кесте 2.3 Санның позициясының экспоненциалды және ондық сәйкестігі

Реттілік

4-ші

3-ші

2-ші

1-ші

0-ші

Сан

4

3

8

7

2

Реттіліктің экспоненциалды мәні

104

103

102

101

100

Реттіліктің ондық мәні

10,000

1,000

100

10

1

Экспоненциалды мәндер санның позициясына сәйкес өсетінін ескереміз. Мысалы, 4-ші позицияның экспоненциалды мәні – 104.

Санның мәнін анықтау үшін бағандағы санды бағанды білдіретін мәнмен көбейтеміз. Келесі жазба - алдыңғы мысал үшін қарапайым есептеу.    

                     suret_2.26.png

Бұл есептеулерді ондық сандарда орындау тривиальды болып көрінгенімен, бұл кез-келген санау жүйесінен ондық санға түрлендіру үшін қолданылатын үлгіні немесе формуланы көрсетеді. Басқаша айтқанда,    suret_2.27.png

 

Бұл жерде p – позиция, b - санау жүйесінің негізі, dp -  сандағы ең жоғары позициясындағы сан, dp-1 – сандағы келесі позиция және т б.

Бұрын қарастырылған санның мысалын қолдана отырып, біз

suret_2.28.png

Екілік

Барлық санау жүйелері бірдей түрлендірілгендіктен, санды екілік кодқа және кері түрлендіру үшін қажет нәрсенің бәрі бар. Екілік формада 101101102 деп жазылатын екілік саннан ондық санға түрлендіруді қарастырайық.

Ең жоғары позиция p, нөлден бастап екілік кодтағы позициялар санын санау арқылы алынады.

suret_2.29.png

Мысалы, 100110 санында ең үлкен позиция - 2P, мұндағы p = 5. Екілік жүйе ондық санға түрлендірудің ең қарапайым жүйесі болғандықтан, он алтылық сандарды түрлендірген кезде бізге кейінірек көмектеседі.

Екілік жүйе ондыққа қарағанда санның мәнін білдіру үшін көбірек цифрларды қолданатынын ескереміз. Мысалы, 99 ондық саны – екілік жүйеде 1100011 болады. Компьютер мамандары екілік мәндерді қысқаша түрде көрсету үшін екілік үшін стенография ретінде он алтылық белгілерді алды.

Сегіздік

Сегіздік санау жүйесі 8 негізді пайдаланады, яғни ол сегіз түрлі цифрды пайдаланады: 0, 1, 2, 3, 4, 5, 6 және 7. Ондық жүйеден айырмашылығы, сегіздік жүйе 8 және 9 сандарын қолданбайды. Сегіздік санау жүйесі көмекші сипатқа ие, ол сандардың екілік комбинацияларын қысқартып жазу үшін ыңғайлы. Бұл екілікке қарағанда жұмыс істеуге ыңғайлы, өйткені ол аз разрядтарды пайдаланады.  Сегіздік жүйе өз уақытында машиналық тілде бағдарламалау үшін, сондай-ақ дербес компьютерлердің пайда болуымен қолданыстан шыққан деректерді дайындау құрылғыларында қолданылды.

Санды екілік санау жүйесінен ондық санға келесідей түрлендіруге болады: санның әр разрядын 2n-ге көбейту керек, мұндағы n-0-ден басталатын разряд нөмірі. Содан кейін алынған мәндерді қорытындылаңыз.

Мысалы,

   suret_2.26_a.png

 

Он алтылық

Он алтылық санау жүйесі (16 базасы). Он алты негізді санау жүйесі он алтылық санау жүйесі (HEX) деп аталады. Бұл жүйеде сандарды көрсету үшін таңбалар жиынын қолданамыз. Оның алғашқы ондығы – ондық санау жүйесіндегі мағынамен бірдей 0, 1, 2, 3...., 9 ондық цифрлары. Қалған алты сан ағылшшын алфавиттеріне сәйкес келеді A, B, C, D, E және F және сәйкесінше 10, 11, 12, 13, 14 және 15 ондық сандарға, яғни он алтылық санау арқылы есептелетін болса, он алтыға тең «цифрлар» мынаған тең:

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.

Басқаша айтқанда, «қарапайым» сандардағы А «онда», В – «он бір», С – «он екі», D – «он үш», Е – «он төрт», «F» – он бес. Сандардың орнына әріптерді қолданудың арқасында он алтылық сандар бір қарағанда біртүрлі көрінеді. Бірақ түрлендірулер әдеттегідей орындалады (кесте 2.4).

           Кесте 2.4 Санның сандық позициясының экспоненциалды және ондық көрінісі keste_2.4.png

 

           Он алтылық санды ондық санға түрлендірудің екі әдісі бар. Тікелей түрлендіру кезінде келесі формула қолданылады.

            

                 suret_2.27_a.png

мұндағы dp - сандағы ең жоғары позициясындағы сан, ал dp-1 – сандағы келесі позиция және т б. және т.б. b - база және p – ең жоғары позицияның мәні.

Түрлендіру келесідей: 

suret_2.28_a.png

 

Бұл әдіс әсіресе үлкен он алтылық сандар үшін пайдалы. Алайда, бір немесе екі цифрдан тұратын шағын сандар үшін он алтылық санды ондық санға айналдырмас бұрын оны екілік санға айналдыру тезірек болады. Он алтылық формат екілікпен байланысты қолдайды, өйткені ол base2 жүйесінің туындысы. Әрбір он алтылық cан төрт екілік санды білдіреді (кесте 2.2).

Кесте 2.5 Он алтылық және ондық форматтар арасындағы байланыс көрсетілген.

suret_2.30.png

 

3B16 санын екілік сан түріне келтіргенде. Бірінші кезекте он алтылық санын кестенің көмегімен екілік түрге ауыстырамыз. Сонымен, 3B16→001110112 болады. Екілік саннан ондық санға түрлендіру басқа жүйелерге қарағанда әлдеқайда оңай, өйткені екілік сандарды 0 және 1-ге көбейту қарапайым операция.

suret_2.31.png

Деректер байты (сегіз бит) екі он алтылық сан түрінде жазылуы мүмкін. Мысалы, ASCII кеңейтілген кодындағы «N» таңбасында 01001110 екілік көрінісі бар. Егер біз оны әрқайсысы төрт биттен тұратын екі топ ретінде жазсақ, біз 0100.1110 аламыз. 5-кестені (жоғарыда) қолдана отырып, 0100 - 4 екенін және 1110 - E екенін табамыз. Сондықтан 0100.1110 үшін сәйкес он алтылық 4E болып табылады.

Компьютерлік жүйені қолдана отырып, кейде он алтылық сандарды жад адрестерінің, желілік адрестердің немесе аппараттық құралға қатысты басқа шамалардың көрінісі ретінде кездестіреміз. Бұзылулар мен қате туралы хабарлар пайда болған кезде оларды операциялық жүйе контекстінде кездесуі мүмкін