Есептегіш программа жобалау


Жоспар

  1. Кіріспе

Есептеу техникасының даму кезеңдері2

  1. Негізгі бөлімАдресация негіздері. 4Резидентті программаны DOS-тың шартымен активизациялау14Дыбыс тілінде құрамы мен логикалық құрылымы23Портқа шығару-енгізу программалардағы жүйелік құрылғыларға шығару--30Delphi ортасымен танысу36Программа39
  2. Қорытынды

Курстық жұмысты қорытындылау44

Пайдаланылған әдебиеттер45

Кіріспе

Есептегіш машина” деген сөздер тіркесі ХХ - ғасырдың 40 - шы жылдарында пайда болды. Ол информацияларды сақтауды және өңдеуді автоматтандыру үшін жасалынған физикалық құрылғыны білдіреді. Есептеу техникасының дамуы ерте кезден - ақ басталды. Мысалы, XVII ҒАСЫРДА б. Паскаль (1613-1662) сандарды қоса алатын механикалық құрылғы ойлап тапты. XVIII ғасырда В. Лейбниц сандарды қоса және көбейте алатын құрылғы жасап шығарды. XIX ғасырда Ч. Бэббидж (1972-1871) механикалық машинаны программа арқылы басқару жүйесімен біріктірді. XX ғасырдың 30-жылдарының соңында Америкада қосу, азайту элементтері, электрондық жад, механикалық компонент енгізілген ЭЕМ құрастырылып шықты. 40-шы жылдардың соңғы кездерінде қазіргі кезде қолданып жүрген ЭЕМ-дердің құрылу принципінің негізінде бірсыпыра машиналар дайындалды. Алғашқы ЭЕМ-ді құру және оның жұмыс істеуінің теориялық негіздерін 1946-1947 жылдары атақты математик, кибернетик Джон фон Нейман дайындап шықты. Мұнда өңделетін информация мен өңдеу программасын сандық түрде дайындау, деректер мен программаны машинаның жадына орналастыру тәсілдері де қарастырылған. Осы кезге дейін дайындалған ЭЕМ-дер төрт буындық түрге бөлінеді.

50-жылдардың басында жарыққа шыға бастаған негізгі өңдеу құралы - бірінші буын ЭЕМ-дерінің ішкі құрылымы элементтері жеке бөлшектерден дайындалған электрондық-логикалық схемаларға негізделген болатын. Бұл бөлшектің негізгілері вакумдық электрондық шамдар еді. Мұндай компьютерлердің көлемі үлкен, сенімділігі жоғары емес, тездік жылдамдықтары бір секундта 5-6 мың қарапайым операция шамасынан аспайтын (екі санды қосу, көбейту не символдарды салыстыру сияқты бір әрекет қарапайым операция деп аталады да, оны орындайтын команда машиналық команда деп аталды. Оның үстіне, мұндай машиналар үшін құрылатын программалар машиналық командалардан тұратын да, программалау жұмысы көп еңбекті қажет еткен. Ал, ЭЕМ-нің өзі тек есептеу жұмыстарын жүргізу үшін пайдаланған) .

Транзисторды ойлап шығарғанға байланысты, 50-жылдардың соғы кездері техникалық негіздері түгелдей алмастырылған, негізгі элементтері жартылай өткізгішті транзисторлардан тұратын екінші буын ЭЕМ-дері жарыққа шықты. Мұндай элементтер машинаның әрекет тездігін және сенімділігін елеулі түрде арттыруға мүмкіндік береді. Екінші буын машиналарының сырт аумағы, масасы, энергия пайдалану шамасы көп төмендегендіктен, олардың өзіндік құны да бірінші буын машиналарына қарағанда көп төмендетілді. Оның үстіне, бұл ЭЕМ-дерде жоғарғы деңгейлі (Алгол, Фортран, Бейсик, т. б) программалау тілдерінде операторлардан тұратын программалармен жұмыс істеу мүмкіндігі туды.

Адресация негіздері.

Адресациялау ережесінің байттары (mod r/m) (ара тұра постбайт деп аталатын, аперанттар жайлы өзінде хабарлама алып жүреді және адресациялау ережесі жайында) . Процессордың көпшілік нұсқаулары IA-32 -екі оперантты. Операнттар есінде сақтаулы болмаса бір және керірегистірінде, алайда екі операнттың есте сақталуына мүмкіндік бермейді. Ерекше жағдайда қалатын тізбе нұсқаулар ғана, оларда екі оперантпен жұмыс істеугше мүмкіндігі бар, бірақ бұл жерде мекен жай анық айтылмайды, машина нұсқауынан тыс. Егерде оперант жадыдан алынса онда байт mod r/m онда компаненттер анықталады (негізгі және индексті регистір ауытқуы), есептеп шығару үшін пайдалануға тиімді мекен жайын анықтау үшін.

Mod- тан кейін алаңмен комбинациялауда r/m 32 түрлі мүмкіндік қүрайды, ол 24 мекендеуіш режиміне және сегіз регистрдің біріне сәйкес келетін 32 мүмкін мағына құрастырады:

о mod = 00 - командада қиылысу ауданы болмайды, ал операндтың мекен-жайы базалық және / немесе индекстік регистрлеріне байланысты шығарылады. Тиімді мекен-жайды шығару үшін нақты қандай регистрлер керек екендігін г/т ауданының құрамындағылардан білуге болады (келесіден қараңыз) . Берілген mod ауданының мәні екіге бағынбайды. Олар (r/m = 110 - 16-биттік және г/т = 101 немесе 100 - 32-биттік мекендеуіш) 2. 5 және 2. 6 таблицаларында жақсы көрсетілген;

mod = 01 - командада қиылысу ауданы болады, бір байт орын алады және базалық немесе / және индекстік регитрлердің құрамындағылармен модификацияланады;

о mod = 10 - командада қиылысу ауданы болады, екі немесе төрт байт орын алады (үндемеумен жұмыс жасайтын немесе мекен-жай өлшемінің префиксімен анықталатын мағынаға байланысты) және базалық немесе / және индекстік регитрлердің құрамындағылармен модификацияланады;

о mod = 11 - жадыда операндтар жоқ, олар регистрлерінде орналасқан. Команда тікелей операндпен жұмыс істеген кезде mod ауданы дәл осы мағынаны білдіреді.

• reg (3 бит) ауданын командада екінші операндтың орнында тұрытын регистр немесе операция кодын ұлғайту коды (КОП ауданының өлшемінің жиынтығын 11 битқа көтеретін) анықтайды.

• r/m ауданы mod ауданымен бірге қолданылады да командада екінші операндтың орнында тұратын регистр (егер mod=11 болса) немесе тиімді мекен-жайды есептеуде қолданылатын индексті немесе базалық регистрлер (командада қиылысу ауданымен бірге), немесе негізгі мән - 16-биттік мекендеуге - 110 адресации (mod ф 11), 101 (mod ф 00) және 16-биттік мекендеуге - 100 (mod ф 11) (2. 5 және 2. 6 табл. қараңыз) .

2. 3 және 2. 4 таблицаларында Intel архитектурасында 32-разрядтық регистрдің үлкен жартысына көңіл аударуға болмайтындықтан 32-разрядтық операциялардағы 16-разрядтық регистрлерге арналған reg ауданының құрамындағылары көрсетілмеген.

Сонымен, тиімді программа құру технологиясына жету арқылы жұмсалатын адам еңбегін үнемдеудің екінші кезеңі басталды. Алпысыншы жылдардың екінші жартысында және жетпісінші жылдары ЭЕМ құрылымына одан ары сапалы, күрделі өзгерістер енгізіліп, элементтік жартыла йөткізгішті интегралдық схема (ИС) , үлкен интегралдық схема (ҮИС) және аса үлкен интегралдық схема (АҮИС) болатын үшінші, төртінші буын машиналар көптеп жасалына бастады. Мысалы, 80-жылдардың басында дайындалған төртінші буындық ЭЕМ-дер бір кристалында он мыңдаған - миллиондаған транзистор болатын микропроцессорлардан құрылады. 90-шы жылдары пайда болған соңғы төртінші буын ЭЕМ-дері білімді нәтижелі түрде өңдей алатын, паралель жұмыс істейтін ондаған микропроцессорлар жиынтығын дайындалып шықты. ЭЕМ жұмысын күрделендіру одан ары жалғасуда.

Интегралдық (біртұтас) схема (ИС) - мүмкіндігі күрделі транзисторлық схемадай болатын, аумаға 1 шаршы см-ге де жетпейтін функционалдық блок. Ол жартылай өткізгішті кристалдан (негізінен кремнийден)

тұрады да, элементтері он мыңдаған - милиондаған транзисторлар, диодтар, конденсаторлар, резисторлар арнайы тақташада (платада, беттақтасында) тұтас қарастырылады. Қазіргі кезде бір кристалдық электрондық (5х5 мм) схемада жүздеген мың «электрондық молекулалар » жинақталған. Интегралдық схеманы пайдалану ЭЕМ-нің сырт аумағын шұғыл кішірейтуге және оның жұмыс өнімділігін көп мыңдаған есе жоғарлатуға мүмкіндік берді. Информация есептегіш машинадағы көп процестерді (үрдістерді) анықтайды. Мысалы, есептегіш машинамен есеп шығарудың жалпы түрі мынадай этаптардан тұрады:

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

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

Информация өзінің хабары мен мазмұны арқылы сипатталатындығы және хабар жіберушіден қабылдаушыға материалды - энергетикалық (электр, жарық, дыбыс және т. с. с сигналдар) түрінде берілетіндігі белгілі. Хабарды қабылдау қабылдаушының жағдайын сипаттайтын қандай-да бір шаманың уақытқа байланысты өзгерісімен тікелей байланысты. Демек, информациялық хабарды информациялық процесс жүретін физикалық ортаның материалдық - энергетикалық параметрлерін уақытқы байланысты өзгертетін Х(t) функциясымен бейнелеуге болады. Осы функция үздіксіз де (мысалы, уақытқа байланысты өзгеретін дененің жылдамдығы, ауаның температурасы және электр тогының күші сияқтылар), үздікті де (мысалы, уақытқа байланысты белгілі бір қатынас тіліндегі таңбалар тізбектері немесе дыбыстар тіркестері арқылы құрылатын сөздер мен сөйлемдер) болуы мүмкін. Үздіксіз функциялар арқылы бейнеленетін хабар - аналогты сигнал, ал үздікті функциялар арқылы берілетін хабар - дискретті сигнал деп аталады. Адамның сезім мүшелерінің мүмкіндігі шектеулі болғандықтан үздіксіз информацияны дискретті түрде қабылдайды.

Оған мысал ретінде термометр арқылы ауа температурасының цифрлық жуық мәнін анықтау.

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

Сондықтан, есептегіш машина информациялық хабардың түріне байланысты аналогты есептеуіш машиналар (АЕМ) немесе дискретті есептегіш машиналар (ДЕМ) болып екі топқа бөлінеді: бұл автомашиналардың қолданатын жанар майдың түріне байланысты дизельді немесе карбюраторлары деп бөлінгеніне ұқсас.

АЕМ кейбір физикалық шамаларды бейнелейтін үздіксіз информацияларды өңдейді. Мұнда физикалық айнымалылар ретінде электр желісіндегі токтың күші, дене қозғалысының үдеуі, иіннің айналу бұрышы сияқтылар алынады. Табиғатта көп құбылыстар бір ғана физикалық процеспен басқа процестерді моделдеуге мүмкіндік береді. Әдетте, АЕМ арқылы тек арнаулы есептерді ғана шешуге болады, сондықтан бұлар көп тарамаған. Бұдан ары қарай АЕМ қаралмайды.

Ең алғаш ДЕМ тек сандық информацияларды өңдеу, яғни ғылыми-техникалық, соның ішінде көбінесе шешу үшін ғана қолданылған. Сондықтан оның атындағы «дискреттік» деген сөздің орнына «цифрлық» деген анықтауышты пайдаланып, цифрлық есептегіш машина (ЦЕМ) деп аталып кетті.

Қазіргі кезде ЦЕМ арқылы информациялардың кез келген (сандық, символдық, локикалық) типін өңдеуге, яғни әр түрлі (ғылыми-техникалық, экономикалық мәтіндерді түрлендіру, бір тілден екінші тілге аудару, басқару, жасанды зерде және т. б. ) есептерді шешуге болады. Оның себебі, бұларда информацияларды өңдеу және сақтау үшін екі тұрақты жағдайлары бар физикалық құрылғылар қолданылады. Бұл жағдайларды “ 0 ” және “ 1 ” цифралырымен белгілейді. Сондықтан өңдеуге қажет информациялар және оларға қатысты алгоритмдер “ 0 ” және “ 1 ” - ден тұратын тізбектер арқылы берілуі керек. Ал қандайда болмасын алгоритмдік тілде жазылған алгоритмді және кезкелген таңбалардың тізбектері арқылы берілген өңдеуге қажет информацияларды мазмұндарын өзгертпей “ 0 ” мен “ 1 ” -ден тұратын тізбектер арқылы кескіндеуге болады(бір ғана мазмұн әртүрлі хабар арқылы беріледі) . Яғни, ЦЕМ әмбебап есептегіш (өңдегіш) құрал болады. Біздің қарастыратынымыз тек ЦЕМ.

Алгоритмнің “ 0 ” мен “ 1 ” - ден тұратын тізбектер арқылы кескінделуін программа деп атайды. Ал ондағы нұсқаулар мен амалдарды бұйрықтар дейді. ЦЕМ орындай алатын барлық бұйрықтар жиынын машиналық тіл деп атайды. Қазіргі машиналық тілдің әліпбилері тек “ 0 ” мен “ 1 ” - ден “” ғана құрылады.

Әрбір ЦЕМ өэінің машиналық тілінде жазылған программаларды ғана орындай алады. Сондықтан кез келген алгоритмдік тілде жазылған алгоритмдерді программаға айналдыру үшін оны машиналық тілге аудару қажет. Жалпы осындай аудармашыны транслятор деп атайды.

Ең алғаш 1946 жылы АҚШ ғалымы Джон фон Нейман әмбебап ЦЕМ жасаудың негізгі принцииптерін жариялады. Осы принциптерді толық жүзеге асырып жасалынған ең бірінші ЦЕМ “EDSAC” деген атпен 1949 жылы Англияда Кембридж университетінде жасалынды. Бір жылдан кецін 1950 жылы “EDVAC” атты әмбебап ЦЕМ АҚШ-та шықты. Бұл елдерде оларды ағылшын тілінде «компьютер» деп атады. Сондықтан осы терминді «автомобиль» деген термин сияқты қазақ тіліне өзгертпей ендіріп қолдануымыз керек. Бұрынғы Кеңес одағында ең бірінші «МЭСМ» деген компьютердің жасалуы 1947 жылы басталып 1951 жылы аяқталды, 1952-1953 жылдары келесі “БЭСМ - 1” компьютері жасалынды.

Резидентті программалар

Көп таралған фирмалық программалар қатары (Prokey, Superkey, Homebase, Sidekick және басқалар), әдейі BIOS және DOS үзулері деп өндірілген резидентті программалар, басқа программамен жұмыс істегенде жадыда орналасады.

Бұл программаларды белгілі бір батырмаларды басу арқылы активтендіруге болады. Мұндай программалар резиденттік программалар деп аталады. Бұл программалар DOS үзулерін енгізгеннен соң қарапайым программаларды орындау арқылы жасалады.

Резидентті СОМ-программасын жадыда қалдыру үшін RET немесе INT 20H командаларының орнына шығу үшін INT 27H немесе DOS 31Н командаларының функциясын қолдану керек. INT 27Н үшін DX регистрінің жүйесінде программаның өлшемін мына түрде береміз:

MOV DX, prog-size

INT 27H

Инициализациялау программасын орындау кезінде DOS - үлкен қолжетерлік мекен-жайларды резервациялайды (ерекшелейді) және оған резидетті программаларды енгізеді. Бұл резидентті программаны жасаудың ең қарапайым және оңай бөлігі.

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

1) Үзу векторларының таблицасында мекен-жайларды анықтайтын секциялардан ;

2) Программаны енгізу кезінде бір рет орындалатын және келесілерді істеуге арналған процедуралардан :

- Үзу векторындағы таблицада мекен-жайларды өзіндік мекен-жайға ауыстыру;

- Резидентті болатын программалардың бөліктерінің өлшемін орнату;

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

3) Резидентті болып қалатын және клавиатурадан, таймер сигналдарынан енгізетін активті процедуралардан тұрады.

Инициализациялау процедурасы резидентті программаның жұмысын қамтамасыз ету үшін барлық жағдайларды жасау керек. Содан соң «жоғарғы құрбан» өзіне жадыда өшірілуіне рұқсат етеді. Қорытындысында жады мына түрде үлестіріледі:

Үзу векторының таблицасы

IBMBIO. COM және IBMDOS. COM

COMMAND. COM

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

Қол жетерлік жадының қалған бөлігі

1-ші суреттегі мысал Alt және Left Shift батырмаларын бір мезетте басқан кезде экранның түсін қондыратын резидентті программаны көркемдейді. Қызығушылық тудыратын негізгі көріністер:

INTTAB сегменті 0 мекен-жайынан басталатын, дәлірек айтқанда 9-шы (клавиатурадан енгізу) үзу элементінің мекен-жайы KBADDR программасында аталған үзу векторының таблицасын анықтайды.

ROMAREA аты 400Н мекен-жайынан басталатын сегментті және ондағы (KBFLAG) клавиатураның жалаушалы байтын анықтайды. Ал, KBFLAG клавиатураның жағдайын көрсетеді.

3-ші бит мына бантта Alt батырмасын басуды регистрациялайды, ал 1-ші бит Left Shift батырмасының басылуын қадағалайды.

TITLE RESIDENT (COM) - резидентті программасы экранды тазалау үшін және түсін қондыру үшін арналған; Alt+Left Shift батырмаларын басу арқылы орындалады.

INTTAB SEGMENT AT OH

ORG 9H*4 KBADDR LABEL DWORD INTTAB ENDS - үзу векторының таблицасы: Int 9H үшін мекен-жай, екілік сөз.

ROMAREA SEGMENT AT 400H

ORG 17H KBFLAG DB ? ROMAREAENDS - BIOS параметрлерінің ауданы; клавиатура жалаушасының мекен-жайы; Alt + Shift жағдайы.

CSEG SEGMENT: CSEG SEGMENT
PARA: PARA
; Код сегменті: ; Код сегменті
CSEG SEGMENT: ASSUME
PARA: CS:CSEG
; Код сегменті:
CSEG SEGMENT: ORG
PARA: 100H
; Код сегменті:
CSEG SEGMENT: BEGIN: JMP
PARA: INITZ
; Код сегменті: ; 1 рет қана орындалады
CSEG SEGMENT: KBSAVE DD
PARA: ?
; Код сегменті: ; INT 9 BIOS мекен-жайы үшін
CSEG SEGMENT:
PARA:
; Код сегменті:

; Түстерді қондыру

; Экранды тазалау

CSEG SEGMENT: COLORS PROC
PARA: NEAR
; Код сегменті: ; Процедура орындалады
CSEG SEGMENT: PUSH
PARA: AX
; Код сегменті: ; Alt + Left S басқан кезде
CSEG SEGMENT: PUSH
PARA: BX
; Код сегменті:
CSEG SEGMENT: PUSH
PARA: CX
; Код сегменті: ; Регистрларды сақтау
CSEG SEGMENT: PUSH
PARA: DX
; Код сегменті:
CSEG SEGMENT: PUSH
PARA: SI
; Код сегменті:
CSEG SEGMENT: PUSH
PARA: DI
; Код сегменті:
CSEG SEGMENT: PUSH
PARA: DS
; Код сегменті:
CSEG SEGMENT: PUSH
PARA: ES
; Код сегменті:
CSEG SEGMENT: PUSHF
PARA:
; Код сегменті:
CSEG SEGMENT: CALL
PARA: KBSAV
; Код сегменті:
Үзулерді өңдеу
CSEG SEGMENT: ASSUME
PARA: DS:ROMAREA
; Код сегменті:
CSEG SEGMENT: MOV
PARA: AX, ROMAREA
; Код сегменті:
Жағдайға қол жеткізу үшін DS-ті қолдану
CSEG SEGMENT: MOV
PARA: DS. AX
; Код сегменті:
CSEG SEGMENT: MOV
PARA: AL, KBFLAG
; Код сегменті:
Alt + Left Shift
CSEG SEGMENT: CMP
PARA: AL. IOIOB
; Код сегменті:
Alt + Left Shift басылған ба?
CSEG SEGMENT: JNE
PARA: EXIT
; Код сегменті:
Жоқ - шығу

Резидентті программа

MOV

MOV

MOV

MOV

INT

EXIT:

POP POP POP POP POP POP POP POP IRET COLORS

ENDP

AX. 0&00H BH. 61H CX. 00 DX. 184FH 10H

ES DS DI SI DX CX BX AX

; Айналдыру функциясы. Түсті тоқтату. Регистрлерді қайта қалпына келтіру

; Қайта оралу

Иницализациялау подпрограммасы:

INITZE PROC

ASSUME PUSH MOV MOV

NEAR

DS:INTTAB

DS

AX, INTTAB

DS. AX

; Тек 1 рет қана орындау

; DOS-қа оралуын қамтамасыз ету. Мәліметтер сегментін тоқтату.

CLI: CLI
:
; Үзуді тоқтату: ; Үзуді тоқтату
CLI:
:
; Үзуді тоқтату: ; Өңдеушінің мекен-жайын ауыстыру
CLI: M0V
: AX, WORD PTR KBADDR
; Үзуді тоқтату: ; Сақтау
CLI:
:
; Үзуді тоқтату: ; мекен-жай
CLI: MOV
: WORD PTR KBSAVE, AX
; Үзуді тоқтату: ; BIOS
CLI: MOV
: AX, WORD PTR KBADDR+2
; Үзуді тоқтату:
CLI: MOV
: WORD PTR KBSAVE+2, AX
; Үзуді тоқтату:
CLI: MOV
: WORD PTR KBADDR, OFFSET
; Үзуді тоқтату: COLORS
CLI:
:
; Үзуді тоқтату: ; алмастыру
CLI: MOV
: WORD PTR KBADDR+2, CS '
; Үзуді тоқтату: ; BIOS мекен-жайы
CLI: STI
:
; Үзуді тоқтату: ; Үзуге рұқсат беру
CLI: MOV
: DX, OFFSET INITZE
; Үзуді тоқтату: ; Программа өлшемі
CLI: INT
: 27H
; Үзуді тоқтату: ; Аяқтау және қалу
CLI: INITZE ENDP
:
; Үзуді тоқтату: ; резидентпен
CLI: CSEG ENDS
:
; Үзуді тоқтату:
CLI: END
: BEGIN
; Үзуді тоқтату:

CSEG сегменті қарапайым СОМ-программаның сегментін бастайды. Бірінші орындалатын JMP INITZE командасы резидентті бөлігін айналып өтеді және программаның соңында (INITZE) инициализациялау процедурасына басқаруды береді. Бұл процедура DI регистрінде (INTTAB) үзу векторы таблицасының мекен-жайын орнатады және резидентті процедурасының KBSAVE полесінде INT 9 (KBADDR) үшін таблицасының элементінің мекен-жайын береді. KBADDF таблицасындағы келесі қадамда резидентті процедураның (COLORS) (бірінші сөз) мекен-жайы және CS (екінші сөз) регистрінің мазмұны орнатылады. Осылайша енді KBADDR екі өзгертілген сөздерді ұстайды: CS регистрінің адресінің жылжытылуы мен мағынасы. CS регистрі жадыдағы COLORS процедурасының мекен-жайын анықтайды және оған клавиатурадан терілген барлық символдар жіберіледі. Содан соң инициализациялау процедурасы ОХ регистріне COLORS (INIT2E мекен-жайы COLORS процедурасының соңының мекен-жайына қарағанда бір байтқа үлкен) процедурасының өлшемін кіргізеді және INT 27Н-ні қолданып жұмысты тоқтатады.

COLORS процедурасы резидентті болып табылады, және кез-келген батырманы басу арқылы басқаруды өзіне алады. Басқа программалар жұмысы барысында (мысалы DOS немесе тексттік редактор) орындалатындықтан, процедура өзі қолданатын (және де әртүрлі жағдайға басқа бірнешесі) барлық регистрларды сақтау керек. Содан кейін KBSAVE мекен-жайы, яғни үзуді өңдеу подпрограммасы шақырылады. Шақырылу орындалған соң, процедура Alt және Left Shift батырмаларын басылуын анықтау үшін клавиатура жалаушасын тексереді. Егер де клавиатуралар басылған болса, онда процедура керекті түстерді орнатады. Аяқталу командалары алғашқыда есте сақталған барлық регистрларды (кері кезекпен) қалпына келтіруді және IRET командасында үзуді өңдеуден шығуды қосады.

... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Қолданбалы программалық қамсыздандыру
Қолданбалы бағдарлама
Негізгі программалық құрылғылар
ҚОЛДАНБАЛЫ ПРОГРАММАЛЫҚ ЖАБДЫҚТАМАНЫҢ ЖАЛПЫЛАМА СИПАТТАМАСЫ
Информатиканы оқыту әдістемесі пәні және информатика мұғалімінің кәсіптік дайындығы, оның білім беру жүйесіндегі орны
Алгоритмдік тілдердің құрылымы
Жаңа ақпараттық (информациялық) технологиялар
Микропроцессорлық жүйелер құрылымы. Микропроцессор архитектурасы
Телекоммуникация саласында ақпараттық технологияларды пайдалану жағдайы
Кәсіпорынды басқаруда алдағы уақытта қолдану үшін ақпаратты қалыптастыру
Пәндер



Реферат Курстық жұмыс Диплом Материал Диссертация Практика Презентация Сабақ жоспары Мақал-мәтелдер 1‑10 бет 11‑20 бет 21‑30 бет 31‑60 бет 61+ бет Негізгі Бет саны Қосымша Іздеу Ештеңе табылмады :( Соңғы қаралған жұмыстар Қаралған жұмыстар табылмады Тапсырыс Антиплагиат Қаралған жұмыстар kz