Есептеуіш техниканы жµндеу жєне техникалыќ ќызмет кµрсету



Pdf көрінісі
бет67/167
Дата07.02.2022
өлшемі5,94 Mb.
#84146
1   ...   63   64   65   66   67   68   69   70   ...   167
Байланысты:
medeshova-komputer-architekt

 
7.5 Бағдарлама мысалдары 


90 
 1-мысал
. А, В және С қыры бар параллелепипедтің толық бетін 
табыңыз. Шығыс мәндер ЖЕСҚ-ң ҧяшығында болсын. Нәтижені 
жады ҧяшығына орналастырыңыз. 
Шешімі
. Параллелепипедтің толық беті келесі формула 
бойынша есептеледі: 
S=2*(A*B+A*C+B*C) 
Ӛрнекті ықшамдап келесі тҥрге келтіреміз: S=2*[A*(B+C)+B*C] 
 
134 бағдарлама 
0000 01ЕО
(22) => R0 В => R0
0002 0022 
0004 0101
R0 => Rl В => Rl
0006 02Е0
R0 + (24) => R0
В + С
0008 0024 
000А 05Е0
R0 * (20) => R0
A * (В + С)
000С 0020 
000Е 05Е1
Rl * (24) => Rl В * С
0010 0024 
0012 0210
R0 + Rl => R0
A * (В + С) +
В * С
0014 0200
R0 + R0 => R0
2 * [A * (В + С)
+ В * С]
0016 010Е
R0 => (26)
нәтиже => S
0018 0026
001A 0F00
тоқтау 
………. 
0020 0002 А
0022 0003 В
0024 0004 С
0026 0034 S 
Ескерту!
Нәтиже 34 ЭЕМ жадысында оналтылық жҥйеде 
берілетінін ҧмытпаңыз. Ондық жҥйеде 52 саны шығады.
2-мысал
. Латын әріптерін әрдайы ҥлкен тҥрінде енгізуді 
ҧйымдастыру. 


91 
 
Шешімі
. Бас әріп пен кіші әріптердің айырмашылығын тауып 
алайық. Ол ҥшін ASCII кестесінен кез келген бас және кіші әріпті 
таңдап екілік жҥйеде кодтайық. Мысалы, R әріпі ҥшін 
R 0101 0010 
r 0111 0010 
Осы әрекетті тағы бірнеше әріптер ҥшін қайталап мынадай 
қорытындыға келеміз: егер кіші битті 0 деп есептесе, онда бас және 
кіші әріптер бес битпен ерекшеленеді.
Сонымен біздің есепте бестен басқа барлық биттерді сақтау 
керек. Ол ҥшін тҧрақтысы бар ЖӘНЕ әрекетін орындау керек. 
1101 1111 =DF, 
сонан соң әрбір код бізге қажеті жоқ биттен басқаларын сақтап 
отырады. 
135 бағдарлама
0000 0E6D
26 => SP стек кӛрсеткішін 
орнату 
0002 0026 
0004 9C0D
40FE шақыру символды енгізу
0006 40FE 
0008 0101
R0 => Rl
еңгізілген символды
сақтау 
000A 07D0
DF and R0 => R0 әріпті ҥлкен жасау 
000C 00DF 
000E 9C0D
4088 шақыру нәтижені шығару 
0010 4088 
0012 0F00
тоқтау 
 
 
3-мысал. 
R1, R2 және R3 регистрларында сақталған сандардың 
ҥлкенін табу. Нәтижені R0 жазу керек. 
Шешуі
. Алдымен R1және R2 сандарының ҥлкенін тауып, R0 
енгізейік. Сонан соң егер R3 R0-ден ҥлкен болса жауап ретінде R3-ті 
жаамыз. 
136 бағдарлама
0000 0412
R2-ді Rl-мен салыстыру 
0002 3D04
егер < 0, онда РС=РС+4
жазбаға Rl (0008)
0004 0120
R2 => R0
R2 сақтау 
0006 1D02
РС=РС+2
екінші тармаққа 
ӛту (000A)
0008 0110
Rl => R0
Rl сақтау 
000A 0403
R3-ді R0-мен салыстыру


92 
000C 3D02
егер < 0, онда РC=РС+2 шығысқа (0010) 
000E 0130
R3 => R0
R3 сақтау 
0010 0F00
тоқтау 


Достарыңызбен бөлісу:
1   ...   63   64   65   66   67   68   69   70   ...   167




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

    Басты бет