o‘zing o‘rgan
Kompyuter savodxonligi va xavfsizlik 1-dars / 15
Pingvi

Kompyuter qanday ishlaydi

Protsessor, xotira, disk, operatsion tizim; bit va bayt; ikkilik sanoq

1-bob. Raqamli dunyoda xavfsiz 15 daqiqa Python 4 savol

Kompyuter — telefon, noutbuk yoki server bo'ladimi — bir xil qismlardan iborat:

Qism Vazifasi O'xshatish
Protsessor (CPU) buyruqlarni bajaradi, hisoblaydi oshpaz
Operativ xotira (RAM) hozir ishlayotgan narsalar — tez, lekin o'chganda yo'qoladi oshxona stoli
Disk (SSD/HDD) fayllarni doimiy saqlaydi muzlatgich va javon
Operatsion tizim (OS) hammasini boshqaradi: Windows, Android, Linux, macOS, iOS oshxona boshlig'i

Telefoningiz «sekinlashdi» desangiz — ko'pincha RAM band (juda ko'p dastur ochiq) yoki disk to'lgan bo'ladi.

Bit va bayt

Kompyuter ichida hamma narsa — matn, rasm, musiqa — 0 va 1 lardan iborat. Bitta 0 yoki 1 — bit. 8 bit — bayt.

print(bin(13))              # 13 ni ikkilik ko'rinishda
print(int("1101", 2))       # ikkilikdan o'nlikka
print(2 ** 8)               # 1 baytda nechta turli qiymat
# Natija: 0b1101
# Natija: 13
# Natija: 256
Birlik Hajm Taxminan nima sig'adi
1 bayt 8 bit bitta lotin harfi
1 KB (kilobayt) 1024 bayt qisqa matnli xabar
1 MB (megabayt) 1024 KB bitta telefon rasmi (2–5 MB)
1 GB (gigabayt) 1024 MB ~1 soatlik video
1 TB (terabayt) 1024 GB minglab film

💡 Internet tezligi odatda bitda o'lchanadi (Mbit/s), fayl hajmi esa baytda (MB). 100 Mbit/s tezlik — soniyasiga taxminan 12,5 MB. Shuning uchun «100 megabitli internetda 100 MB fayl 1 soniyada yuklanmaydi».

Amaliyot Python

Bayt sonini tushunarli ko'rinishga keltiring: 1024 dan kichik — bayt, aks holda KB, MB yoki GB (bir xona aniqlikda):

500 B
1.5 KB
5.0 MB
2.0 GB
main.py Ctrl+Enter — ishga tushirish
input() uchun ma'lumotlar
Kodni yozib, «Ishga tushirish» ni bosing. Birinchi marta Python yuklanishi bir necha soniya oladi.
Yechimni ko'rish
def hajm(bayt):
    if bayt < 1024:
        return f"{bayt} B"
    for birlik in ["KB", "MB", "GB"]:
        bayt /= 1024
        if bayt < 1024 or birlik == "GB":
            return f"{bayt:.1f} {birlik}"

for b in [500, 1536, 5_242_880, 2_147_483_648]:
    print(hajm(b))

O'zingizni tekshiring

Savol 1 / 4

Kompyuter o‘chganda qaysi xotiradagi ma’lumot yo‘qoladi?

Variantlar

Savol 2 / 4

1 baytda necha bit?

Variantlar

Savol 3 / 4

Ikkilik sanoqda 101 qaysi son?

Variantlar

Savol 4 / 4

100 Mbit/s internetda soniyasiga taxminan necha MB yuklanadi?

Variantlar