Главная страница
Навигация по странице:

  • Позициялық санау жүйелері

  • 2.2.кесте Позициялық санау жүйелері

  • Санның цифрына бөлінетін позицияны разряд деп атайды. Екілік санның әрбір разрядын (цифрын) бит деп атайды.Компьютерде сандық ақпаратты көрсету түрлері.

  • ASCLL коды. Есептеуіш техникасында ең көп пайдаланатын код-ASCLL коды - американдық

  • 1 бай=8бит; 1 кбайт(килобайт)=1024 байт; 1 мбайт(мегабайт)=1024кбайт; 1гбайт(гигабайт)=1024мбайт;

  • Үтір (нүктесі) бекітілген және нүктесі жылжымалы сандарды көрсету. Дербес компьютердің жадысында нақты сандарды көрсету үшін басқадай тәсіл қолданылады. Жылжымалы үтірлі

  • Теріс сандарды көрсету.

  • Сандардың тура кері және қосымша кодтары.

  • Сандық ақпаратты көрсету қателіктері.

  • 8 апта. Компьютерлік арифметика. Сан


    Скачать 44.94 Kb.
    НазваниеКомпьютерлік арифметика. Сан
    Дата17.03.2022
    Размер44.94 Kb.
    Формат файлаdocx
    Имя файла8 апта.docx
    ТипДокументы
    #402280

    Компьютерлік арифметика.

    «Сан» түсінігі математика үшін де, информатика үшін де маңызды болып табылады. Сан қандай да бір алфавиттің символымен немесе символдар тізбегімен өрнектеледі. Мұндай символдарды цифр деп атайды. Сан түсінігімен санау жүйелері туралы түсінік байланысты.

    Санау жүйелері – сандарды өрнектеудің қандай да бір тәсілі және оған сәйкес сандармен әрекет жасау ережелері.

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

    Позициялық санау жүйелері

    Позициялық санау жүйелерінде әрбір цифрдың мәні, осы санның жазылуында тұрған орнына тәуелді. Қазіргі кезде кең тараған позициялық санау жүйелеріне ондық, екілік, сегіздік және он алтылық жүйелер жатады. Әрбір позициялық жүйенің нақты анықталған цифрлар алфавиті мен негізі бар.

    Позициялық санау жүйесінің негізі цифрлар санына тең және көрші позицияда тұрған бірдей цифрлардың мәндері неше есеге ерекшеленетінін анықтайды.

    Сандардың бізге үйреншікті жазылу жүйесі ондық жүйе деп аталады, ол он араб цифрларынан тұрады. Кез келген санды жазу үшін 0-ден 10-ға дейінгі 10 цифр қолданылады, оның негізі 10-ға тең; екілік жүйеде тек 0 және 1 цифрларын қолдануға болады, негізі-2; сегіздік жүйе сегіз цифрдан тұрады, негізі – 8; он алтылық жүйеде ондық санау жүйесінің он цифры және қалған 6 цифрдың орнына латын алфавитінің әріптері қолданылатын, барлығы он алты цифр бар, негізі – 16.

    2.2.кесте

    Позициялық санау жүйелері

    Санау жүйесі

    Негізі

    Цифр алфавиті

    Ондық

    10

    0,1,2,3,4,5,6,7,8,9

    Екілік

    2

    0,1

    Сегіздік

    8

    0,1,2,3,4,5,6,7

    Он алтылық

    16

    0, 1, 2, 3, 4, 5, 6, 7, 8, 9 А(10), В(11), С(12), Д(13), Е(14), F(15)

    Санның цифрына бөлінетін позицияны разряд деп атайды.

    Екілік санның әрбір разрядын (цифрын) бит деп атайды.

    Компьютерде сандық ақпаратты көрсету түрлері.

    Ақпаратты белгілі-бір алфавит арқылы ұсынуды кодтау деп атайды.Бір белгі тобынан екінші белгі тобына көшіру ережесін код деп атайды. Ақпаратты сақтау,қабылдау, ұсыну, және өңдеу әдістері іс жүзінде ақпараттың ұсынылу түріне байланысты болады.Ақпараттың  кодталуы  кейде  шифрлау  депте  айтылады,  оның  кері кодталуы  декодирование  процесімен  тікелей  байланысты. Екілік  алфабиты 0 және 1  таңбаларымен  ұсынылады.Ақпаратты  екілік  код  пен  көрсету  үшін, құрылғы  екі  күйді айыра  білуі керек. 0 немесе 1 мәндерін ғана қабылдай алатын сигналды  бит деп атайды . Символдарды кодтау үшін 8 биттен тұратын  котты байт деп атайды. 8 нөл мен бірлердің көмегімен яғни бір  байттың  көмегімен  256 символ  кодталады. Символдарды кодттау кобинациаларының жиынтығын кодтау кестесі деп аталады.
         ASCLL коды.

         Есептеуіш  техникасында ең көп пайдаланатын код-ASCLL  коды - американдық

         апарат алмасудың стандарттық коды.

         Кодтау кестенің 16 жолы  16 бағаны бар . Кесте екі бөліктен тұрады ; стандарты, баламалы .

          Стандартты  бөліктегі – бірінші 128  символдар , 0- ден 127-ге дейінгі коттар; Цифрлар, латын алфавитінің  әріптерімен компютер жумысын  басқаратын арнайы символдар.    

    Баламалы бөліктегі-128-ден 255-ке дейінгі кодтар алфавиттер (орыс, қазақ) Ондық, екілік, оналтылық санау жүйелерінің сәйкестендіру кестесі  бойынша  кодтауға  болады.

    Ақпарат оны тіркейтін құрылғыға дыбыс, электромагнитті сәуле, физикалық әрекет түрінде келіп түседі. Бұл әрекеттер сигнал деп аталады.

            Синал дегеніміз- оның көмегімен адам немесе, құрылғы ақпарат қабылдайтын процесс. Сигнал ақпарат тасуыш. Ақпарат жіберу дегеніміз- сигналдар жіберу.

             Сигнал аналогтық (үздіксіз), дискретті(үзілісті) болуы мүмкін. Аналогдық сигналдарға мысалдары: Сигналды дискретті түрде ұсынғанда ол сан қатары, алфавит әріптері,музыкалық нота оған мысал бола алады.Уақыт аралығын неғұрлым көбірек алған сайын, кернеудің уақыт  аралығында өзгеру процесін соғұрлым дәлірек сипаттаймыз. Керісінше дискретті процесті аналогтық процеске айналдыруға болады.Адам сезім мүшелері арқылы  сигналдарды аналогтық түрде қабылдайды, ал есептеуіш техникалары негізінде дискретті түрдегі сигналдармен жұмыс істейді.

    Ақпарат адам үшін жаңа,белгісіз болу керек. Егер ақпарат біз үшін толық, объективті,жаңа,пайдалы, әрі нақты болса ол біз үшін бағалы болады. Хабардың ақпараттың көлемі деп- хабардың ұзындығын, яғни символдар санын білдіреді.Ендеше техникада кез-келген сақталатын берілетін ақпарат ондағы ең кіші өлшем бірлік разрядқа немесе 1 битке тең болады. Ақпаратты өлшеу бірлігі бір битке тең. Одан кейін 1 байт. Хабардың ақпараттың көлемі-бит немесе байтта өлшенетін оның ұзындығы.

                    1 бай=8бит;

                    1 кбайт(килобайт)=1024 байт;

                    1 мбайт(мегабайт)=1024кбайт;

                    1гбайт(гигабайт)=1024мбайт;

    Үтір (нүктесі) бекітілген және нүктесі жылжымалы сандарды көрсету.

    Дербес компьютердің жадысында нақты сандарды көрсету үшін басқадай тәсіл қолданылады. Жылжымалы үтірлі шамаларды көрсетуді қарастырамыз:

    Кез-келген нақты санды M  10p, 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.
    Теріс сандарды көрсету.

    Компьютердегі ақпараттың ең аз өлшем бірлігі - бит болып табылады. Бит 0 немесе 1 мәнін қабылдайды.

    8 биттен тұратын топ байтты құрайды. Биттер немесе байттағы разрядттар оңнан солға қарай 0-ден 7-ге дейін нөмірленеді:

     

    Байт таңбасыз 0-ден 255-ке дейінгі және таңбалы -128-ден +127-ге дейінгі сандардан тұруы мүмкін.

    Екі байт немесе он алты байт сөз құрайды. Сөздегі биттер оңнан солға қарай 0-ден 15-ке дейін нөмірленеді:

    Сөз таңбасыз 0-ден 65535-ке дейінгі және таңбалы -32768-ден +32767-ге дейінгі сандардан тұруы мүмкін.

    Төрт байт немесе екі сөз екілік сөз құрайды, ол 32 биттен тұрады, ал екі екілік сөз төрт сөз құрайды (64 бит).

    Компьютердегі бүкіл есептеулер екілік санау жүйесінде жүргізіледі, яғни екілік код арқылы. Сандарды оналтылық түрде көрсету, сандардың екілік кодтағы қысқа түрдегі жазуы болады. Ол үшін төрт екілік разрядтты бір оналтылық разрядпен жазуға болады. Сандарды көрсетудің бұл екілік форматынан басқа ондық, екілік-ондық (BCD), және ASCІІ - код түрлері пайдаланылады.

     

    Екілік код.

    Екілік кодта екілік екі цифр бар. Ол 0 және 1. Екілік санының белгісі ретінде В әрпі қолданылады. Ол сан соңына қойылады. Мысалы: 10101001В.

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

     

    Мысалы:

    10001010b = 1*27 + 0*26 + 0*25 + 0*24 + 1*23 + 0*2+ 1*2+ 0*20 =

    = 128 + 8 + 2 = 138.

    Ондық код.

    Ондық кодта 0-ден 9-ға дейінгі сандар ондық цифрлар бар. Ондық санның белгісі болып D әрпі көтсетіледі. Ол санның ең аяғына қойылады. Егер санның соңында әріп болмаса онда сан ондық деп қабылданады.

    Оналтылық код.

     

    Ондық кодта 0-ден 9-ға дейінгі сандар және A-дан F-ке дейінгі әріптер болады. Оналтылық санның белгісі болып H әрпі көтсетіледі. Ол санның ең аяғына қойылады. Сан міндетті түрде цифрдан басталуы керек. Байт құрамында екі оналтылық разряд, сөз құрамында төрт разряд, екілік сөз құрамында сегіз разряд бар. Мысалы:

    1BA8h = 1*163 + 11*162 + 10*161 + 8*160 = 4096+2816+160+8 = 708

    Екілік-ондық код (BCD).

    Екілік-ондық сандар оналтылық цифрлармен жазылады. Екілік-ондық сандар жинақталған немесе жинақталмаған форматта көрсетілуі мүмкін. Жинақталған форматта байт құрамында екі ондық цифр болуы мүмкін: 00-ден 99h дейін.

    Жинақталмаған форматта байт құрамында кіші тетрадада бір цифр, ал үлкен тетрада 0-ге тең болады: 00-ден 09h дейін.

    BCD кодтары екілік – ондық арифметика командаларында қолданылады

     

    ASCІІ - код.

    Микропроцессор мен принтер, пернетақта немесе дисплей арасындағы деректермен өзара алмасу үшін ASCІІ - коды пайдаланылады. ASCІІ - коды (информация алмасуға арналған американдық стандартты код) компьютердегі алфавитті-цифрлық информацияны кодтауға арналған.

    Мысалы 0-ден 9-ға дейінгі цифрларда 48-ден 57-ге дейін (30h тан 39h) ASCІІ - кодтары бар. “A” дан “Z” дейінгі бас әріптер 65-тен 90-ға дейін (41h тан 5Ah) ASCІІ - кодтары, ал “a” дан “z” кіші әріптері 097 ден 122-ге дейінгі (61h тан 7Ah) ASCІІ - кодтары бар. Алған нәтижені экранға шығару үшін оны ASCІІ - кодында көрсету керек. Мысалы: экранға 17h санын шығару керек дейік. Ол үшін алдымен оны ашу керек, сосын ASCІІ - кодына аудару керек:

    17h ® 0107h ® 3137h

     

    Теріс сандарды көрсету.

    Теріс сандар компьютерде қосымша код арқылы көрсетіледі.

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

     

    Мысалы:

    100 = 64h = 0110 0100b санның тікелей коды

    терістеу ® 1001 1011b санның кері ауысқан коды

    +1 ® 1001 1100b = 9Ch санның қосымша коды

    Қосымша кодты алу операциясын екіге дейін толықтыру операциясы деп атайды. Бұл форматтағы үлкен (7-ші, 15-ші, 31-ші байт , сөз, екілік сөз үшін) биттер әруақытта санның таңбасын көрсетеді: 0 – оң сандар және 1 – теріс сандар үшін.

    Mіcrosoft фирмасының ассемблер тілінде программаны дайындау процесі

    Программаны дайындау және жөндеу процессі келесі этаптардан тұрады:

    · Программа тексті кез – келген текстік редектор арқылы дайындалады. Орындалатын текстегі файл кеңейтілуі .ASM түрінде болуы міндетті;

    · Программа трансляциясы MASM.EXE ассемблерінің көмегімен, объектілік файл алу үшін орындалады;

    · Объектілік модулдің компоновкасы LІNK. EXE компоновщигі арқылы, жүктемеленетін (орындалатын) файл алу үшін орындалады;

    · Дайын программаның орындалуы CodeVіew (CV.EXE файлы) интерактивті жөндегіш арқылы орындалады.

    Программаның орындалатын текстін жазатын редактор таңдау кезінде ескеретін жағдай, көптеген текстік процессорлар шығу файлына көмекші ақпарат қосып жібереді (мысалы, Mіcrosoft Word). Сондықтан редактор таңдау кезінде ешқандай басқару символдарынсыз «таза текстін шығаратын редактор таңдаған жөн. Бұл редакторларға бізде кеңінен тараған Лексикон, Norton Edіtor сияқтылар жатады. Егер орындалатын текстегі файл программасының аты P/ASM деп аталған болса, онда ассемблерді шақыру жолы келесідегідей түрде болады:

    MASM /Z /ZІ /N P, P, P;

    /Z кілті программаның орындалатын текстіндегі, ассемблер тапқан қателерді экранға шығаруға рұқсат береді (бұл кілтсізқателерді табуды трансляциялистингі бойынша орындауға тура келеді).

    /ZІ кілті обьектілік файлға программаның орындалуы кезінде сұралмайтын, CodeVіew жөндегіші мен қолданылмайтын орындалатын программа жолдарын және басқа ақпараттарды қосуды орындайды.

    /N кілті программадағы қолданылған белгілеулер тізімін листингке шығаруды басады, олар листинг өлшемін бірнеше рет кішірейтуге болады.

    Одан кейін орналасқан параметрлер модул аттарын береді: (P.ASM) орындалатын, (P. OBJ) обьектілік және (P.LST) листинг файлдары. Ал нүктелі-үтір қиылысқан сілтемелерді, яғни P.CRF файлын қалыптастыруды болдырмау үшін пайдаланылады.

    Компоновщикті шақыру жолы келесідегідей түрде болады:

    LІNK /CO P, P;

    /CO кілті орындалатын файлдағы CV жөндеуішінде орындалатын программаның толық текстін экранға шығару үшін символдық ақпараттарды береді, оған таңбалар, коментарилер жәнет.б. жатады. Одан кейін орналасқан параметрлер модулаттарын береді: (P. OBJ) обьектілік және (P.EXE) жүктемеленетін файлдар. Ал нүктелі-үтір (P.MAP) листингтікомпоновкалау файлының қалыптастыруын болдырмау үшін және ішкі программа модулдерімен қолданылатын кітапханалық файлдарды пайдаланбау үшін қоданылады.

    Компоновщик .EXE форматындағы жүктемелегіш файл құрады.

    Егер орындалатын файл .COM форматында жазылған болса, онда трансляция және копоновкадан кейін қарапайым түрде оны .COM типіндегі файлға ауыстыру керек. Бұл үшін DOS құрамына кіретін EXE2BІN сыртқы командасы қолданылады:

    EXE2BІN P P.COM

    Бірінші параметр EXE2BІN командасына берілетін P.EXE жүктемеленетін файл екендігін көрсетеді, ал екіншісі ауыстырылған кездегі нәтиже. Екінші параметрдегі . COM кеңейтілуін көрсету міндетті түрде болу керек, өйткені үнсіздікпен EXE2BІN командасы . BІN кеңейтуіндегі файл құрады.
    Сандардың тура кері және қосымша кодтары.

    ЭЕМ-де алгебралық қосу мен азайту операциялары кері және қосымша кодтарда орындалады. Бұл кодтарды қолдану екі санның айырымын олардың қосындысы мен ауыстыруға мүмкіндік береді. Екі екілік санды кері кодты пайдаланып алгебралық қосу кезінде оң сан тура кодта, ал теріс сан кері кодта өрнектеледі де осы кодтар (таңбалық разрядтар да) қосындыланады. Таңба разрядынан бірлік тасымал пайда болғанда оны кодтар қосындысының төменгі (ең кіші) разрядына қосады (циклдік тасмал). Екі теріс А- және В-сандарын қосқанда: (A-)кері+(В-)кері=(А-+2+2-n)=(B-+2+2-n)=(A-+B-)+[2]=(2-2-n)-2-n=(A-+B-)кері ([2]-таңба разрядынан пайда болған бірлік тасымал, сондықтан ол (+2-n)-мен ауыстырылады). Теріс В- саны мен оң А+санын қосқанда: +)тура+(В-)кері=(А+-)+[2]+2-n. Егер (А+-)>0 болса, онда [2]- таңба разрядынан пайда болған тасымал бірлік болады, сондықтан ол (+2-n)-мен ауыстырылады, сонда қосынды мынаған тең: +-) тура. Сөйтіп келтірілген ереже бойынша кодтарды қосу қосынды оң болғанда тура кодта, қосынды теріс болғанда кері кодта өрнектелген алгебралық қосынды береді.

    Екі санды қосымша кодты пайдаланып алгебралық қосу кезінде оң сандар тура кодта, ал теріс сандар қосымша кодта өрнектеледі де бүтін бірлік разряды ретінде қарастырылатын таңба разрядтарын қоса есептегендегі кодтар арифметикалық қосындыланады. Таңба разрядтарынан тасымал пайда болғанда тасмал бірлік ескерілмейді. Егер қосынды мәні оң болса, онда қосынды тура кодта, ал қосынды мәні теріс сан болса, онда қосынды қосымша кодта алынады. Теріс А-1 мен В-1 сандарын қосқанда:


     

    [A-]қос+[В-]қос=( A-+2)+( В-+2)=( A-+ В-)+2+[2]=( A-+ В-)+2=[ A--]қос([2]- таңба разрядынан пайда болған тасымал бірлік ескерілмейді). Егер А>0 және В<0 болса, онда [A+]тура+[B+]қос=A++B-+2. егер 0<(А+-) болса (2-ескерілмейтін тасмал “I”), онда [A-]қос+[В-]қос =(А+-)>0, яғни [A-+B+]тураалынады. Егер- I<( A-+ В-)<0 болса, онда (A++В)+2=[A+-]қос. Қосымша, сондай-ақ кері кодты пайдаланғанда разряд торынан тыс шамалар пайда болуы мүмкін. Мысалы: А-1=0,10110, [A-]қос=1,0101, B-=-0,11011, [B-]қос=1.00101; [A-]қос+[B-]қос=0,01111 (қате нәтиже). Аса толу кезінде қате нәтижені байқау үшін жоғарғы разрядтан таңба разрядына және таңба разрядтарынан болатын тасымалдарды талдау керек.

    Таңбалары бірдей сандарды қосқанда аса толу пайда болуы мүмкін. Сонда алынған нәтиже абсолют шамасы бойынша сандардың берілген пішіні үшін рұқсат етілген ең үлкен мәннен асып кетеді. ЭЕМ-де аса толу жағдайлары арнайы сұлбамен байқалады да үзіліс сигналы үйымдастырылады. Оң таңбалы екі санды қосу кезінде қосындының жоғарғы мәнді разрядынан таңба разрядына тасымал бар, ал таңба разрядынан шығатын тасымал жоқ жағдайда аса толу орын алады.

    Егер теріс екі санды қосқанда қосындының таңба разрядынан тасымал бар болса, ал жоғарғы разрядынан таңба разрядына тасымал жоқ болса, онда аса толу орын алады.

     

    Разряд торының аса толуын байқау үшін кей жағдайда өрнектелетін санның таңбасына арналып екі разряд бөлінеді (“+”-00 болып кодталады, ал “-” – II болып кодталады). Сандардың мұндай өрнектелуі модификацияланған код деп аталады. модификацияланған кодта сандарды өрнектеу көрсетілген. Мұндай кодтарда аса толу белгілері таңба разрядында 01 немесе 10 комбинатциялары алынғанда байқалады. Сонда 01-оң сандар, ал 10-теріс сандар облысында пайда болатын аса толу белгісі.

    Мысалы:

    а және ә – қосымша кодада қосу.



    б және в – кері кодта


    Сандық ақпаратты көрсету қателіктері.

    Әрине, комьютерді қолданудың басты бағыттарының бірі әртүрлі есептеулер болған және болып қала береді де.

    Сандық ақпаратты өңдеу бір қарағанда қандай-да бір есептеулерге байланысы жоқ есептерді шешуде де жүргізіледі, мысалы компьютерлік графика немесе дыбысты пайдаланғанда. Осыған байланысты компьютерде сандарды тиімді көрсетуді таңдау мәселесі туындайды. Әрине, 8-битті (байттық) кодтауды қолданып, олардан сандарды құрастыруға болады. Бірақ мұндай кодтау тиімді болмайды, оны мына мысалдан көруге болады: айталық екіорынды 13 саны берілсін; оның жеке цифрларын 8-битті кодтау кезінде ASCII кодтарында оның коды келесі түрде болады: 0011000100110011, яғни ұзындығы 16 бит; Сандарды көрсету тек берілгендерді (әріптерді немесе сандарды) жазу тәсілінен ғана емес, сол сияқты оларға қолданылатын амалдар жиынтығын да анықтауы керек. Жекелей алғанда, әріптер қандай-да бір тізбекке орналастырылады (немесе ол жерден алынып тасталынады), олардың өздерінің өзгеруінсіз; ал сандардға оларды өзгертетін амалдар қолданылады, мысалы, түбір табу немесе басқа санмен қосу. Сандарды компьютерде көрсетудің, бізге мектеп математикасынан белгілі формада көрсетілуінен екі маңызды айырмашылығы бар:

    Біріншіден, сандар екілік санау жүйесінде жазылады (үйреншікті ондық жүйеден қарағанда);

    Екіншіден, сандарды жазу мен өңдеу үшін саны шектеулі разрядтар қолданылады ( «компьютерлік емес» арифметикада мұндай шектеу жоқ).


    написать администратору сайта