Bitlar va baytlar

Bitlar va baytlar kompyuterdagi eng kichik ma’lumot birliklaridir.

Bit — bu qiymati 0 yoki 1 bo‘lgan bitta ikkilik raqam.

Bayt — bu 8 ta bitdan iborat guruh.

ULASHISH

Bit nima?

Bit — kompyuterdagi mumkin bo‘lgan eng kichik ma’lumot birligi.

Bitta bit 0 yoki 1 qiymatini saqlaydi.

Bitlar turli usullarda saqlanadi:

  • Kompyuter xotirasida bit elektr kuchlanishi sifatida saqlanadi: ma’lum chegaradan yuqori kuchlanish 1 ni, undan past kuchlanish esa 0 ni ifodalaydi.
  • Qattiq disklarda bit magnitlanish sifatida saqlanadi: bir yo‘nalishda magnitlangan soha 1 ni, qarama-qarshi yo‘nalishda magnitlangan soha esa 0 ni ifodalaydi.
  • CD, DVD va Blu-ray disklarda bit chuqurcha yoki tekis soha sifatida saqlanadi. Chuqurcha — bu yuzasi atrofdagi yuzadan pastroq bo‘lgan soha bo‘lib, u 1 ni ifodalaydi. Tekis soha — chuqurcha bo‘lmagan joy bo‘lib, u 0 ni ifodalaydi.

Lekin faqat bitta bitni saqlashning o‘zi unchalik foydali emas. Kattaroq hajmdagi ma’lumotlarni ifodalash uchun ko‘proq bitlarni birgalikda saqlashimiz kerak.


Bayt nima?

Bayt — bu 8 ta bitdan iborat guruh, masalan, 10001011.

Har bir bit 0 yoki 1 bo‘lishi mumkin va baytda 8 ta bit bo‘lgani uchun bayt 28 = 256 xil qiymatga ega bo‘lishi mumkin.

Bitta bayt yordamida quyidagilarni saqlashimiz mumkin:

  • 256 xil rangdan biriga ega piksel.
  • 0 dan 255 gacha bo‘lgan ishorasiz son.
  • -128 dan 127 gacha bo‘lgan ishorali son.
  • ASCII jadvalidagi belgi.

Bu shuni anglatadiki, aynan 10001011 bayti quyidagilardan biri bo‘lishi mumkin:

  • Muayyan rangdagi piksel.
  • 139 ishorasiz soni.
  • -117 ishorali soni (eng chapdagi bit 1, ya’ni bu manfiy son).
  • Kengaytirilgan ISO-8859-1 ASCII jadvalidagi < belgisi.

Lekin odatda zamonaviy kompyuterlar bitta belgi, son yoki rangni saqlash uchun bir nechta baytdan foydalanadi.

Bitlar va baytlar qanday ishlashini chuqurroq tushunish uchun ikkilik sonlar haqida o‘rganing.


Baytlar guruhlarini saqlash

Ko‘rganimizdek, bitta belgi, son yoki rangni saqlash uchun bitta baytdan foydalanish mumkin.

Lekin odatda zamonaviy kompyuterlar biror narsani saqlash uchun bir nechta baytdan foydalanadi.

Ranglar

Masalan, bu ko‘k rang CSS kodi rgb(0,153,204) bilan yaratiladi va 3 bayt yordamida saqlanadi:

  • 00000000 (0) qizil rang uchun
  • 10011001 (153) yashil rang uchun
  • 11001100 (204) ko‘k rang uchun

Boshqa ranglarning kodlarini ushbu rang tanlagich yordamida topish mumkin.

3 bayt yordamida 224 = 16 777 216 xil rangni saqlashimiz mumkin.

Belgilar

Belgilarni UTF-8 kodlashi yordamida saqlaganda, bitta belgi 1 dan 4 baytgacha joy egallashi mumkin.

UTF-8 da g harfi 1 bayt yordamida 01100111 ko‘rinishida, 😊 smayl emojisi esa 4 bayt yordamida 11110000 10011111 10011000 10001010 ko‘rinishida saqlanadi.

1 dan 4 baytgacha joy yordamida 1 112 064 xil belgini saqlashimiz mumkin.

Sonlar

Juda katta yoki yuqori aniqlik talab qiladigan (yoki ikkalasi ham) sonlarni saqlash ko‘p xotira talab qiladi.

Masalan, Python yoki JavaScript tilida pi 𝜋 = 3.141592... matematik sonini saqlash (IEEE 754 standartiga ko‘ra) 64 bit talab qiladi.

Sonlarni saqlash uchun 64 bitdan foydalanish katta sonlarni va yuqori aniqlikdagi sonlarni saqlash imkonini beradi, bu esa juda aniq hisob-kitoblarni bajarishga imkon yaratadi.



Ma’lumot saqlash birliklari

Ma’lumotlarni saqlashda ularning hajmini o‘lchash uchun turli birliklardan foydalanishimiz mumkin.

Ma’lumot o‘lchov birliklarida katta "B" harfi "bayt"ni, kichik "b" harfi esa "bit"ni bildiradi.

Ko‘p baytlarni saqlashda quyidagi birliklardan foydalanamiz:

  • Baytlar (B)
  • Kilobaytlar (kB)
  • Megabaytlar (MB)
  • Gigabaytlar (GB)
  • Terabaytlar (TB)

Xalqaro birliklar tizimi (SI) quyidagi prefikslarni belgilaydi:

  • kilo- (k), ya’ni 1 000
  • mega- (M), ya’ni 1 000 000
  • giga- (G), ya’ni 1 000 000 000
  • tera- (T), ya’ni 1 000 000 000 000

Demak, 1 kilobayt 1 000 bayt, 1 megabayt 1 000 000 bayt, 1 gigabayt 1 000 000 000 bayt, 1 terabayt esa 1012 baytga teng.

Ma’lumotlarni saqlashda ularning hajmini o‘lchash uchun ana shu birliklardan foydalanamiz.

Masalan, quyidagi 500x300 pikselli yo‘lbars rasmini har bir pikselning rangi uchun 3 baytdan (24 bitli rang chuqurligi) foydalanib saqlash 500 * 300 * 3 = 450 000 bayt talab qiladi.

24-bit BMP image of a tiger

Yuqoridagi rasm hajmi 450 000 bayt yoki 450 kB (kilobayt).

Lekin hisoblash texnikasida o‘nlik tizim o‘rniga ikkilik sonlardan foydalanilgani uchun ma’lumot saqlash birliklarini o‘lchash biroz chalkash bo‘lishi mumkin, chunki 1 kilobayt ba’zan 1 000 bayt o‘rniga 210 = 1024 baytni, 1 megabayt esa ba’zan 1 000 000 bayt o‘rniga 220 = 1024 * 1024 baytni anglatadi va hokazo.

Bunday o‘lchashda yuqoridagi rasm 450 000 / 1024 = 441 kB bo‘ladi, ya’ni avvalgisiga deyarli teng, lekin aynan emas.

Bu chalkashlikning oldini olish uchun Xalqaro elektrotexnika komissiyasi (IEC) quyidagi birliklarni belgilagan:

  • kibi- (Ki), ya’ni 1024
  • mebi- (Mi), ya’ni 1024 * 1024
  • gibi- (Gi), ya’ni 1024 * 1024 * 1024

Demak, mutlaqo aniq va to‘g‘ri bo‘lishi uchun yuqoridagi rasm hajmi 450 kB yoki 441 KiB deyishimiz kerak.


Ma’lumot uzatish birliklari

Ma’lumot uzatish tezligini o‘lchash ma’lumot saqlash birliklarini o‘lchashga o‘xshaydi, faqat oxiriga "sekundiga" qo‘shiladi.

Bitlardagi ma’lumot uzatish tezligi birligi — "sekundiga bit" (bps yoki b/s), baytlardagi ma’lumot uzatish tezligi birligi esa — "sekundiga bayt" (Bps yoki B/s).

Kattaroq hajmdagi ma’lumotlar uzatilganda prefikslardan foydalanamiz:

  • sekundiga kilobit (kbps)
  • sekundiga megabit (Mbps)
  • sekundiga gigabit (Gbps)

Bunda kilo-, mega- va giga- mos ravishda 1000, 1 000 000 va 1 000 000 000 ni bildiradi.

Baytlardagi uzatish tezligi uchun ham xuddi shu prefikslar ishlatiladi.

Ma’lumot saqlash birliklarida bo‘lgani kabi, 1024, 1024 * 1024 va 1024 * 1024 * 1024 ni ifodalash uchun mos ravishda kibi-, mebi- va gibi- prefikslaridan foydalanish kerak.

Ma’lumot uzatish tezliklari chalkash bo‘lishi mumkin.

500 Mbps 62.5 MBps dan ancha tezroq ko‘rinadi, shunday emasmi?

Lekin aslida 500 Mbps 62.5 MBps bilan bir xil (500 / 8 = 62.5). Kichik "b" "bitlar"ni, katta "B" esa "baytlar"ni anglatadi.



W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!