Ma'ruza №1 Paskal tilining umumiy tavsifi



Download 336,5 Kb.
bet52/54
Sana29.12.2021
Hajmi336,5 Kb.
#75131
1   ...   46   47   48   49   50   51   52   53   54
Bog'liq
Ma'ruza №1 Paskal tilining umumiy tavsifi

Klaviaturani boshkarish


Skanirlash kodi, begili tugmachalar, boshkaruv tugmachalari, kengaytirilgan kod, ReadKey, KeyPressed, surish tugmachalari,
Standart klaviaturalarda uch tipdagi tugmachalar mavjud:
belgili (xarflar, sonlar);
boshkaruv (funksional tugmachalar, kursorni surish, kushish, yukotish va bokalar);
surish Ctrl, Alt, NumLock, CapsLock va boshkalar.

Biror -bir tugmacha bosilganda klaviatura mikroprotsessori shaxsiy kompyuterlar standartiga mos kodni tanlaydi va bu kod Turbo Pascal sistemasida skanerlash kodiga aylantiriladi. Skanerlash kodini analiz kilish mumkin va u klaviaturani boshkarish algoritmining asosi xisoblanadi.



Belgili tugmachalar bosilganda bittagina kiymatni kaytaradi va bu kiymat oddiy kod deb aytiladi.

Boshkarish klaishalari bosilganda ikkita kiymatni kaytaradi , ulardan birinchisi 0 (mana shu bokarish klavishvsining xususiyatiga kiradi), ikinchisi esa- tugmacha bosilgandagi kattalik. Maxsus tugmachalarning kaytarish kodlarini kengaytirilgan deb kabul kilinadi. Klaviaturani boshkarish CRT modulining maxsus ReadKey va KeyPressed funksiyalari yordamida bajariladi..
ReadKey funksiyasi belgilarni klaviaturadan ukib, Char tipidagi kiymatlarni kaytaradi.

KeyPressed. funksiyasi biron tugmacha bosilganda True ni, aks xolda False ni kaytaradi.

Belgili va boshkarish klavishlarini skanerlash kodlarini kuyidagi misolda kurib chikamiz.
PROGRAM DemoScanCode;

USES Crt;

CONST

Null = #0;



Esc = #27;

F1 = #59;

F10 = #68;

InsKey = #82;

VAR

ExtendKey: boolean;



Ch: char;

FUNCTION GetKey: char;

{ funksiya klavish bosilishini kutib turadi }

VAR


Ch: char;

BEGIN


ExtendKey:= False;

Ch:= ReadKey;

IF Ch = Null THEN BEGIN

ExtendKey:= True;

Ch:= ReadKey

END;


GetKey:= Ch

END; { GetKey }

BEGIN { DemoScanCode }

ClrScr;


REPEAT

Ch := GetKey;

IF NOT ExtendKey THEN

Writeln('Kodli belgi tugmachasi bosilgan ', byte(Ch))

ELSE

CASE Ch OF



F1..F10 : Writeln(' Funksional klavish bosilgan');

InsKey : Writeln(' bosilgan')

ELSE Writeln('Kengaytirilgan kod #00+', byte(Ch));

END; { case }

UNTIL (Ch <> Esc);

END. { DemoScanCode }

Endi siljish tugmachasini qanday ishlashini kurib chikamiz. Misol tarikasida SIF (NumLock) klavishini kurib chikamiz.

Agar baytlarni 0 dan 7 gacha bitlar yigindisi deb karalsa, NumLock ga $0000:$0417 absalyut adresli baytning 5- biti tugri keladi. NumLock klavishining ishlash dasturi kuyidagicha:

PROGRAM DemoNumLock;

USES Crt;

CONST

Esc = #27;



VAR

Ch : char;

ShiftByte: byte absolute $0000:$0417;

BEGIN


REPEAT

IF KeyPressed THEN

Ch:= ReadKey;

IF ShiftByte AND $20 <> 0 THEN

Write(' NumLock tugmachasi bosilgan');

UNTIL Ch <> Esc;

END. { DemoNumLock }


Download 336,5 Kb.

Do'stlaringiz bilan baham:
1   ...   46   47   48   49   50   51   52   53   54




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish