Məzmuna keç
Educora
Orta8-ci sinif22 dəq16 / 59

Müxtəlif say sistemlərində hesab əməlləri

İkilik, səkkizlik, onaltılıq və istənilən əsaslı sistemdə sütunla toplamağı, çıxmağı, vurmağı və bölməyi, nəticəni onluqda yoxlamağı, qarışıq əsaslı ifadələri hesablamağı və n bitlik yaddaşda daşmanı anlamağı öyrən.

Özünü yoxla
Bu dərsdə öyrənəcəksən
  • İstənilən əsaslı say sistemində sütunla toplamaq və çıxmaq (köçürmə və borc alma ilə)
  • İkilik ədədləri vurmaq və bölmək, 2ᵏ-ya vurmanı sürüşdürmə kimi yerinə yetirmək
  • Müxtəlif əsaslarda verilmiş ədədlərlə ifadələri hesablamaq və nəticəni onluqda yoxlamaq
  • n bitlik yaddaşda daşmanı izah etmək və saxlanan nəticəni tapmaq

Məktəbdə 9 + 1 = 10 yazanda əslində təklər mərtəbəsi dolur və 1 onluqlar mərtəbəsinə keçir. İkilik sistemdə mərtəbə daha tez dolur: 1 + 1 = 10₂. Kompüterin prosessoru bütün hesablamaları ikilik sistemdə, məhz sütunla toplama qaydası ilə aparır. Bu dərsdə sütunla əməlləri istənilən əsasa köçürəcəyik — yeganə fərq odur ki, mərtəbə 10-da yox, b-də dolur. Ədədləri çevirməyi «Səkkizlik və onaltılıq say sistemləri» dərsində öyrəndik; indi onlarla birbaşa hesablayacağıq. DİM-də bu mövzu «Müxtəlif say sistemlərində hesab əməlləri» adlanır.

Sütunla toplama: köçürmə qaydası

Toplama onluq sistemdəki kimi sağdan sola, mərtəbə-mərtəbə aparılır. Mərtəbədəki cəm s əsasdan kiçikdirsə (s < b), olduğu kimi yazılır. s ≥ b olarsa, mərtəbəyə s − b yazılır, 1 isə növbəti mərtəbəyə keçirilir (yadda saxlanılır). İkilik sistemin bütün toplama cədvəli dörd sətirdir: 0 + 0 = 0, 0 + 1 = 1, 1 + 1 = 10₂, 1 + 1 + 1 = 11₂.

s = q·b + r → mərtəbəyə r yazılır, q növbəti mərtəbəyə keçirilir
burada:
  • smərtəbədəki rəqəmlərin və köçürmənin cəmi
  • bsay sisteminin əsası
  • ryazılan rəqəm, 0 ≤ r ≤ b − 1
  • qköçürmə

Toplamada s ≤ 2(b − 1) + 1, ona görə köçürmə həmişə 0 və ya 1 olur; vurmada isə q daha böyük ola bilər.

Niyə məhz belə? Mərtəbədə b vahid yığılanda onlar birlikdə növbəti mərtəbənin düz 1 vahidinə bərabər olur, çünki hər mərtəbənin çəkisi sağdakından b dəfə böyükdür. Məsələn, səkkizlikdə təklər mərtəbəsində 13 vahid = 8 + 5: səkkizi növbəti mərtəbəyə 1 kimi keçir, 5 yerində qalır. Onluqdakı «1 yadda qalır» qaydası bunun b = 10 halıdır. Aşağıda ikilik toplama sütun şəklində göstərilib.

Text
   111111 
    101101
+    11011
----------
   1001000
101101₂ + 11011₂ sütunla. Ən üst sətir — köçürmələrdir.
İkilik və səkkizlik toplama

Hesabla: 1) 101101₂ + 11011₂; 2) 3657₈ + 1426₈.

Həllini göstər
1) Sağdan sola:
1 + 1 = 10₂ → 0 yazırıq, 1 köçürürük
0 + 1 + 1 = 10₂ → 0, 1 köçür
1 + 0 + 1 = 10₂ → 0, 1 köçür
1 + 1 + 1 = 11₂ → 1, 1 köçür
0 + 1 + 1 = 10₂ → 0, 1 köçür
1 + 0 + 1 = 10₂ → 0, 1 köçür
Son köçürmə ən sola yazılır: 1001000₂. Yoxlama: 45 + 27 = 72 = 64 + 8 ✓
2) 7 + 6 = 13 = 8 + 5 → 5, 1 köçür
5 + 2 + 1 = 8 = 8 + 0 → 0, 1 köçür
6 + 4 + 1 = 11 = 8 + 3 → 3, 1 köçür
3 + 1 + 1 = 5 → 5
Cavab: 5305₈. Yoxlama: 1967 + 790 = 2757 = 5·512 + 3·64 + 0·8 + 5 ✓
Onaltılıq və 5-lik toplama

Hesabla: 1) 9AE₁₆ + 5C7₁₆; 2) 3421₅ + 2434₅.

Həllini göstər
1) E + 7 = 14 + 7 = 21 = 16 + 5 → 5, 1 köçür
A + C + 1 = 10 + 12 + 1 = 23 = 16 + 7 → 7, 1 köçür
9 + 5 + 1 = 15 = F
Cavab: F75₁₆. Yoxlama: 2478 + 1479 = 3957 = 15·256 + 7·16 + 5 ✓
2) 1 + 4 = 5 = 5 + 0 → 0, 1 köçür
2 + 3 + 1 = 6 = 5 + 1 → 1, 1 köçür
4 + 4 + 1 = 9 = 5 + 4 → 4, 1 köçür
3 + 2 + 1 = 6 = 5 + 1 → 1, 1 köçür
Cavab: 11410₅. Yoxlama: 486 + 369 = 855 = 625 + 125 + 100 + 5 ✓

Sütunla çıxma: borc alma

Çıxmada üstdəki rəqəm alttakından kiçikdirsə, soldakı mərtəbədən 1 vahid borc alınır. Onluq sistemdə bu vahid 10, b əsaslı sistemdə isə b vahiddir: ikilikdə 2, səkkizlikdə 8, onaltılıqda 16. Qonşu mərtəbədə 0 durursa, borc daha soldakı mərtəbədən alınır və yol boyu sıfırlar b − 1-ə çevrilir — onluqdakı 1000 − 1 = 999 kimi.

a < c olduqda: rəqəm = a + b − c, soldakı mərtəbə 1 azalır
burada:
  • aazalanın rəqəmi
  • cçıxılanın rəqəmi
  • bsay sisteminin əsası

İkilikdə ən çox rast gəlinən hal: 10₂ − 1₂ = 1₂, yəni 2 − 1 = 1.

İkilik və səkkizlik çıxma

Hesabla: 1) 101101₂ − 10110₂; 2) 5203₈ − 1647₈.

Həllini göstər
1) Sağdan sola:
1 − 0 = 1
0 − 1: soldakı 1-dən borc alırıq: 2 − 1 = 1
0 − 1 (bu mərtəbə borc verib, 0 qalıb): yenə borc, 2 − 1 = 1
0 − 0 = 0 (borc verib)
0 − 1: borc, 2 − 1 = 1
0 − 0 = 0 (borc verib)
Cavab: 10111₂. Yoxlama: 45 − 22 = 23 = 16 + 4 + 2 + 1 ✓
2) 3 − 7: qonşu mərtəbədə 0 durur, borc 2-dən alınır: 2 → 1, 0 → 7, sağ mərtəbəyə 8 gəlir: 3 + 8 − 7 = 4
7 − 4 = 3
1 − 6: 5-dən borc: 1 + 8 − 6 = 3, 5 → 4
4 − 1 = 3
Cavab: 3334₈. Yoxlama: 2691 − 935 = 1756 = 3·512 + 3·64 + 3·8 + 4 ✓
Onaltılıq çıxma

Hesabla: A03₁₆ − 4F8₁₆.

Həllini göstər
3 − 8: qonşu mərtəbədə 0 durur, borc A-dan alınır: A → 9, 0 → F (= 16 − 1), sağ mərtəbəyə 16 gəlir: 3 + 16 − 8 = 11 = B
F − F = 0
9 − 4 = 5
Cavab: 50B₁₆. Yoxlama: 2563 − 1272 = 1291 = 5·256 + 0·16 + 11 ✓

Vurma və bölmə

İkilik sistemin vurma cədvəli ən sadədir: 0·0 = 0·1 = 1·0 = 0, 1·1 = 1. Ona görə ikilik vurma sürüşdürmə və toplamadan ibarətdir: vuruğun hər 1-i üçün birinci ədəd həmin mərtəbə qədər sola sürüşdürülüb yazılır, sonra bu sətirlər toplanır. Başqa əsaslarda sütunla vurma onluqdakı kimidir, yalnız köçürmə b-yə bölməklə tapılır. Bölmə də onluqdakı kimi aparılır; ikilikdə qismətin hər rəqəmi 0 və ya 1 olur. Sürüşdürmə niyə vurmadır? Ədəd bir mərtəbə sola keçəndə hər rəqəmi b dəfə ağır mərtəbəyə düşür, yəni bütün ədəd b-yə vurulur.

N·bᵏ: sağa k sıfır yazılır; N : bᵏ: son k rəqəm atılır və qalığı göstərir
burada:
  • Nb əsaslı sistemdə yazılmış ədəd
  • ksürüşdürmə (mərtəbələrin sayı)

Onluqdakı 37·100 = 3700 qaydasının ümumi forması. İkilikdə 2-yə vurmaq bir mərtəbə sola, 2-yə bölmək bir mərtəbə sağa sürüşdürmədir.

İkilik vurma və bölmə

1) 1011₂ · 110₂
2) 10111₂ · 1000₂
3) 10111011₂ ədədini 100₂-yə böl: qisməti və qalığı tap.

Həllini göstər
1) 110₂-nin 1-ləri ikinci və üçüncü mərtəbələrdədir, ona görə 1011₂-ni bir və iki mərtəbə sola sürüşdürüb toplayırıq: 10110₂ + 101100₂ = 1000010₂. Yoxlama: 11·6 = 66 = 64 + 2 ✓
2) 1000₂ = 2³ → sağa üç sıfır: 10111000₂ (23·8 = 184 ✓).
3) 100₂ = 2² → son iki rəqəm qalıqdır: qismət 101110₂ = 46, qalıq 11₂ = 3. Yoxlama: 4·46 + 3 = 187 = 10111011₂ ✓
Səkkizlik vurma və ikilik bölmə

1) 47₈ · 6₈
2) 110110₂ : 110₂

Həllini göstər
1) 7·6 = 42 = 5·8 + 2 → 2 yazırıq, 5 köçürürük
4·6 + 5 = 29 = 3·8 + 5 → 5 yazırıq, 3 köçürürük
Cavab: 352₈. Yoxlama: 39·6 = 234 = 3·64 + 5·8 + 2 ✓
2) Soldan: 110 ≥ 110 → qismətə 1, qalıq 0; sonrakı rəqəm: 1 < 110 → 0; 11 < 110 → 0; 110 → 1, qalıq 0.
Qismət 1001₂. Yoxlama: 54 : 6 = 9 ✓

Qarışıq əsaslı ifadələr və yoxlama

DİM tapşırıqlarında tez-tez müxtəlif əsaslarda yazılmış ədədlərlə ifadə verilir, cavab isə müəyyən əsasda soruşulur. Ən etibarlı yol: bütün ədədləri onluğa çevir, hesabla, nəticəni tələb olunan əsasa çevir. Əsaslar 2, 8 və 16-dırsa, hamısını ikiliyə keçirib ikilikdə toplamaq da olar. Seçdiyin variantı onluğa çevirib yoxlamaq bir dəqiqə çəkir və səhvi tutur.

DİM tipli qapalı tapşırıq

11011₂ + 37₈ + 1A₁₆ ifadəsinin qiymətini ikilik say sistemində göstərin.
A) 1010100 B) 1001100 C) 1010010 D) 1100100 E) 1010110

Həllini göstər
Onluğa: 11011₂ = 16 + 8 + 2 + 1 = 27; 37₈ = 3·8 + 7 = 31; 1A₁₆ = 16 + 10 = 26.
Cəm: 27 + 31 + 26 = 84.
84 = 64 + 16 + 4 = 2⁶ + 2⁴ + 2² = 1010100₂.
Doğru cavab: A) 1010100.
Kodlaşdırılan tapşırıq (cavabı yaz)

101₂ · 7₈ + 1F₁₆ ifadəsinin qiymətini səkkizlik say sistemində yazın.

Həllini göstər
101₂ = 5, 7₈ = 7, 1F₁₆ = 16 + 15 = 31.
5·7 + 31 = 66.
66 : 8 = 8, qalıq 2; 8 : 8 = 1, qalıq 0; 1 : 8 = 0, qalıq 1 → 102₈. Yoxlama: 64 + 0 + 2 = 66 ✓

n bitlik yaddaşda daşma

Kompüter ədədi sabit uzunluqlu yaddaş yuvasında saxlayır. n bitə 0-dan 2ⁿ − 1-ə qədər ədədlər yerləşir: 8 bitə 0…255, 16 bitə 0…65535. Cəm bu həddi keçəndə ən soldakı köçürmə yuvaya sığmır və itir — buna daşma deyilir. Saxlanan nəticə cəmin 2ⁿ-ə bölünməsindən alınan qalıqdır, yəni proqram gözlənilməz kiçik ədəd görür.

saxlanan nəticə = (a + c) mod 2ⁿ
burada:
  • a, ctoplananlar (işarəsiz tam ədədlər)
  • nyuvadakı bitlərin sayı
  • modbölmədən alınan qalıq

Cəm 2ⁿ − 1-dən böyük deyilsə, daşma olmur və nəticə düzgündür.

Daşma

1) 8 bitlik yuvada 11001000₂ + 01100100₂ toplanır. Yuvada hansı ədəd qalacaq?
2) 4 bitlik yuvada 1011₂ + 0111₂ toplanır. Nəticə nədir?

Həllini göstər
1) 200 + 100 = 300 > 255 — daşma. Sütunla: 11001000₂ + 01100100₂ = 100101100₂; doqquzuncu bit itir, yuvada 00101100₂ = 44 qalır. Yoxlama: 300 − 256 = 44 ✓
2) 11 + 7 = 18 > 15: 10010₂ → beşinci bit itir, yuvada 0010₂ = 2 = 18 − 16 qalır.
İnteraktiv
Simulyasiya yüklənir…
Ədədi 255 et (bütün bitlər 1) və «1 artır» düyməsinə bas: 8 bit daşır və sayğac 0-dan başlayır.

Python-da int(s, b) b əsaslı yazılışı onluğa, bin(), oct(), hex() isə geri çevirir, ona görə istənilən cavabı bir neçə sətirlə yoxlamaq olar. Python-un tam ədədləri daşmır, ona görə 8 bitlik yuvanı % 256 ilə təqlid edirik:

Python
a = int('101101', 2) + int('11011', 2)
print(a, bin(a))
b = int('3657', 8) + int('1426', 8)
print(b, oct(b))
c = int('A03', 16) - int('4F8', 16)
print(c, hex(c))
print((200 + 100) % 256)
▸ Gözlənilən nəticə
72 0b1001000
2757 0o5305
1291 0x50b
44

Bu dərsdə əsas həmişə məlum idi. «Say sistemləri: naməlum əsas məsələləri» dərsində isə tərsinə — bərabərliyə görə əsası tapmağı öyrənəcəyik; DİM-in kodlaşdırılan tapşırıqlarının çoxu məhz belədir.

Əsas fikirlər

  • Sütunla əməllər istənilən əsasda eyni qaydadır, yalnız mərtəbə b-də dolur: cəm s ≥ b olduqda s − b yazılır, 1 köçürülür.
  • Çıxmada borc alınan vahid b-yə bərabərdir: ikilikdə 2, səkkizlikdə 8, onaltılıqda 16.
  • İkilik vurma = sürüşdürmə + toplama; bᵏ-ya vurmaq k sıfır yazmaq, bᵏ-ya bölmək son k rəqəmi (qalığı) atmaqdır.
  • Qarışıq əsaslı ifadəni onluqda hesabla, nəticəni tələb olunan əsasa çevir və onluqda yoxla.
  • n bitlik yuvada nəticə (a + c) mod 2ⁿ olur; 2ⁿ − 1-dən böyük cəm daşmaya səbəb olur.

Özünü yoxla

12 sual. Hər düzgün cavab XP qazandırır.

1 / 12
İkilik say sistemində 1 + 1 + 1 cəmi necə yazılır?