Menu
Coddy logo textTech

Neden Hexadecimal?

Coddy'nin Assembly Journey'sinin Temeller bölümünün bir parçası — ders 10 / 45.

Artık bilgisayarların ikili sistem (binary) kullandığını biliyorsunuz. Peki, assembly programcıları neden nadiren doğrudan ikili sistemde yazarlar?

İkilik sistemin sorunu:

İkilik sayılar çok uzundur. Şu örneğe bakın:

Sayıİkilik
25511111111
10001111101000
655351111111111111111

Uzun 1 ve 0 dizileri yazmak yavaştır, hataya meyillidir ve okunması zordur.

Çözüm: onaltılık (taban 16).

Onaltılık (veya "hex") 16 sembol kullanır:

BasamakDeğer
0-90'dan 9'a
A10
B11
C12
D13
E14
F15

Neden hex bilgisayarlar için mükemmeldir:

Bir hex basamağı tam olarak 4 biti (yarım bayt) temsil eder.

BitlerGerekli hex basamakları
4 bit (nibble)1 hex basamağı
8 bit (1 bayt)2 hex basamağı
16 bit (2 bayt)4 hex basamağı
32 bit (4 bayt)8 hex basamağı
64 bit (8 bayt)16 hex basamağı

Aynı sayı, üç farklı şekilde:

OndalıkİkiliOnaltılık
25511111111FF
100011111010003E8
655351111111111111111FFFF

Hex'in binary'den ne kadar daha kısa olduğuna dikkat edin.

Assembly'de onaltılık (hex) sayıları göreceğiniz yerler:

  • Bellek adresleri (0x7FFF veya 0x402000 gibi)
  • ASCII kodları ('A' için 0x41, yeni satır için 0x0a gibi)
  • Hata ayıklayıcılardaki register değerleri
  • Renk değerleri (kırmızı için 0xFF0000 gibi)

Hex bir önek ile yazılır:

ÖnekÖrnekAnlamı
0x0xFFHex formatında FF (onluk sistemde 255)
$$FFAynı şey (bazı assembler'larda kullanılır)
hFFhAynı şey (eski stil)

Bu kursta, 0x önekini kullanıyoruz: 0x0a, 0x41, 0xFF.

Kendin dene

Bu ders bir kod alıştırması içermiyor.

quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temeller bölümündeki tüm dersler