Namangan davlat universiteti matematika fakulteti


Ma’lumotlarni asosiy konversiyalari



Download 352,52 Kb.
bet3/6
Sana01.07.2022
Hajmi352,52 Kb.
#727785
1   2   3   4   5   6
Bog'liq
ATI DU 20 Temirov A KURS ISHIM 4-Mavzu

Ma’lumotlarni asosiy konversiyalari

Toraytiruvchi va kengaytiruvchi transformatsiyalar
Konversiya torayishi va kengayishi mumkin. Kengaytirilgan transformatsiyalar ob'ekt hajmini xotirada kengaytiradi. Masalan:
byte a = 4; // 0000100
ushort b = a; // 000000000000100
bayt qiymati. Bayt turi 1 bayt (8 bit) va a ning ikkilik qiymati quyidagicha ifodalanishi mumkin:
00000100
Qisqa qiymat 2 bayt (16 bit). Va b o'zgaruvchiga tayinlanganda, a o'zgaruvchining qiymati 2 baytgacha kengaytiriladi
0000000000000100
Ya'ni, kengligi 8 bit bo'lgan qiymat 16 bitgacha kengaytiriladi.
Boshqa tomondan, konversiyalarni toraytirish, qiymatni kamroq kenglik turiga toraytiradi. Maqolaning ikkinchi ro'yxatida biz konvertatsiyalarni qisqartirish bilan shug'ullandik:
ushort a = 4;
byte b = (byte) a;
Bu erda 8 bit uzunlikdagi b o'zgaruvchisiga ushort qiymati beriladi, bu 16 bit. Ya'ni, 0000000000000100 dan biz 00000100 ni olamiz. Shunday qilib, qiymat 16 bitdan (2 bayt) 8 bitgacha (1 bayt) toraytiriladi.
Aniq va yashirin konversiyalar.
Yashirin konvertatsiyalar
Konversiyalarni kengaytirilganda, kompilyator biz uchun barcha ma'lumotlarni o'zgartirishni amalga oshirdi, ya'ni konvertatsiyalar yashirin (implicit konvertatsiya) edi. Bunday o'zgarishlar hech qanday qiyinchilik tug'dirmaydi. Shunga qaramay, bunday o'zgarishlarning umumiy mexanikasi haqida bir necha so'z aytish kerak.
Kichikroq belgisiz turdan katta belgisiz turga o'tkazishda 0 qiymatiga ega bo'lgan qo'shimcha bitlar qo'shiladi. Bu nol to'ldirish yoki nol kengaytma deyiladi.
byte a = 4; // 0000100
ushort b = a; // 000000000000100
Imzolangan turga aylantirilganda, agar raqam ijobiy bo'lsa, bit ko'rinishi nol bilan to'ldiriladi, agar raqam salbiy bo'lsa. Raqamning oxirgi raqami ishora bitini o'z ichiga oladi - musbat raqamlar uchun 0 va salbiy raqamlar uchun 1. Qo'shilgan bitlarga kengaytirilganda, belgi biti siqiladi.
Ijobiy raqamni aylantirishni o'ylab ko'ring:
sbyte a = 4; // 0000100
short b = a; // 000000000000100
Aniq konvertatsiya qilish uchun biz o'zimiz konvertatsiya operatsiyasini (() operatsiyasini) qo'llashimiz kerak. Turni o'zgartirish operatsiyasining mohiyati shundan iboratki, qiymatdan oldin qavs ichida berilgan qiymat o'zgartirilishi kerak bo'lgan tur ko'rsatilgan:
int a = 4;
int b = 6;
bayt c = (bayt) (a + b);
Pastroq bit chuqurligi bo'lgan turdan yuqori bit chuqurligiga ega bo'lgan turga kengaytirish konversiyasi kompilyator tomonidan aniq amalga oshiriladi. Bular quyidagi o'zgarishlar zanjirlari bo'lishi mumkin:

Download 352,52 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6




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