Читайте также:
|
|
Сандарды қосу технологиялық процесс көрсеткіштерін қосу кезінде қолданылады. Қосынды мәндерін зерттеп қондырғыны басқару процесіне бір өзгертулер енгізеді.
Бір байтқа 0-ден 255-ке дейінгі сандарды жазуға болады. Кейбір практикалық есептер үшін бұл жеткіліксіз. Егер екі байт қолданса, онда 0-ден 65535-ке дейінгі сандарды жазуға болады. Сандарды он алтылық санақ жүйесінде беріп қосуға болады.
Мысалы, 65284 және 65534 ондық жүйедегі сандарды қосу керек. Сандарымызды 16-лық жүйеде көрсетейік, әрқайсын екі регистрге жазамыз, 11.3-кестеге қараңыздар. Зертханалық жұмыста бұл байттар әрбір қосылғыш үшін үлкен және кіші байттар деп аталады, мысалы h’23’ және h’22’.
11.3 кесте – Сандарды оналтылық кодта қосу
Атаулар | Ондық жүйе | Оналтылық жүйе | ||
Қосылғыштар немесе SUM_3 | Үлкен байттар (регистрлер) | Кіші байттар (регистрлер) | ||
1-ші қосылғыш | h’FF04’ | S1_S =h’FF’ | S1_M =h’04’ | |
2- ші қосылғыш | h’FFFE’ | S2_S =h’FF’ | S2_M =h’FE’ | |
Табылған қосынды | SUM_3=h’01’ | SUM_S=h’FF’ | SUM_M =h’02’ |
Нәтижесін ондық санақ жүйесінде көрсетейік: h’01FF02’®
®1×164+15×163+15×162+0×161+2×160=65536+61440+3840+0+2=130818.
Байттарды қосқан кезде егер қосынды h’FF’ (яғни 255-тен) жоғары болса, онда үлкен байттың 0-нші битіне 1 қосуды ескеру керек. Қосынды үш байт шығатыны анық. Регистрдің толу кезі Status регистрінің С битінде көрсетіледі, яғни ол 1-ге тең. Осы кезді қолданып үлкен байттын 1-ге өсіруді орындаймыз, яғни арифметикалық ауысу болады.
Басқа жағынан қарасақ үлкен байтта санның бүтін бөлігі көрсетілген, ал кіші байтта бөлшек бөлігі бар деп қарастыруға болады. Мұндай санды көпмүшеге келтіреміз A=K2×162+ К1×161+K0×160+ K-1/16-1+К-2/16-2.
Ондық жүйедегі 255,017 және 255,991 бөлшек сандарды қосайық. Бұл сандарды қосу үшін бөлшек және бүтін бөліктерін бөлек оналтылық санақ жүйесіне өткізіп қосамыз [2].
Санның бүтін бөлігін 16 санақ жүйесіне аудару алгоритмі:
Алгоритм басы
Берілген санның бүтін бөлігін енгізу
Бөлінгішті берілген санға теңестіру
Бөлінгіш нөл болғанға дейін келесіні қайталау:
Бөлінгішті 16-ға бөліп бүтін бөлігін және қалдығын табу
Қалдығын есте сақтау
Бөлінгішті бүтін бөлікке теңестіру
Цикл соңы
Алгоритм соңы
Мысалы, 255 санын 16 санақ жүйесіне аударайық:
255:16=15(15)
15:16=0 (15).
онымен, 16 санақ жүйесіне алғанымыз 25510=FF16.
Санның бөлшек бөлігін 16 санақ жүйесіне аудару алгоритмі:
Алгоритм басы
Берілген санның бөлшек бөлігін енгізу
Көбейтілгішті енгізілген санға теңестыру
Көбейтінді 0-ден үлкен болса келесіні қайталай беру:
Көбейтілгіштің 16-ға көбейтіндісін табу
Көбейтіндінің бүтін бөлігін нәтижеге 16 жүйедегі сан ретінде жазу
Егер барлық маңызды сандар табылса, онда циклдан шығу
Цикл соңы
Алгоритм соңы
Бірінші қосылғыштың бөлшек бөлігін үш санға дейінгі дәлдікпен оналтылық жүйеге ауыстырайық, содан кейін дөңгелектейміз.
0.017×16= 0. 272; 0.272×16= 4. 352; 0.352×16= 5. 63.
Сонымен, 0.01710=0.0416. Үшінші 5 цифрасы 8-ден кіші болғандықтан қарастырмаймыз.
Екінші қосылғыштың бөлшек бөлігі:
0.991×16= 15. 856; 0.856×16= 13. 696; 0.696×16= 11. 136.
Сонымен, 0.99110=0.FDB16.
Оналтылық жүйеде алынған санды екі санға дейін дөңгелектеп алатынымыз 0,99110=0,FE16.
Программа жұмысының нәтижесінде алынған мәндер 11.4 кестеде көрсетілген.
11.4 кесте – Екі байттық бөлшек сандарды қосу
Атаулар | Ондық жүйе | Оналтылық жүйе | ||
Қосылғыштар немесе SUM_3 | Үлкен байттар (регистрлер) | Кіші байттар (регистрлер) | ||
1-ші қосылғыш | 255,017 | h’FF,04’ | S1_S =h’FF’ | S1_M =h’04’ |
2- ші қосылғыш | 255,991 | h’FF,FE’ | S2_S =h’FF’ | S2_M =h’FE’ |
Алынған қосынды | 511,008 | SUM_3=h’01’ | SUM_S=h’FF’ | SUM_M =h’02’ |
Оналтылық жүйеде алынған h’01FF,02’ нәтижені ондық жүйеге келтірейік:
Sum=1×162+15×161+15×160+0×16-1+2×16-2=256+240+15+0+0,0078,
=511,0078.
Осыдан көргеніміздей екі жағдайдағы да нәтиже бөлшек мәніне дейін тура келді.
11.1-суретте екібайттық сандарды қосу блок-сұлбасы көрсетілген, онда қосылғыштар берілген деп қарастырылады.
11.1 сурет – Блок-сұлба
Дата добавления: 2015-07-19; просмотров: 103 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Зертханалық жұмыс тапсырмасы және берілгендер | | | Status регистрі |