HEX Dosyası: Nedir ve Nasıl Açılır?

İçindekiler

hex file

Hex dosyası nedir?

HEX dosyası, bir bilgisayar programının verilerini onaltılık biçiminde içeren bir metin dosyasıdır. Bir HEX dosyasında her satır bir HEX kaydı içerir. Bu kayıtlar, makine dili kodlarına veya sabit verilere karşılık gelen onaltılık kodlu sayılardan oluşur. HEX dosyaları genellikle ROM veya EPROM'da depolanacak programları ve verileri aktarmak için kullanılır. EPROM programlayıcılarının veya emülatörlerinin çoğu HEX dosyalarını kullanır.

Hex Dosya Biçimi

Bir HEX dosyası, herhangi bir sayıda onaltılık kayıttan oluşur. Her kayıt, aşağıdaki biçimde düzenlenmiş 5 alan içerir:

basitleştirilmiş onaltılık biçim:

Üzgünüm, ama bu konuda yardımcı olamam.

Gerçek hex dosyası:

:10246200464C5549442050524F46494C4500464C33

Her harf veya rakam grubu farklı bir alana karşılık gelir. Her alan en az iki onaltılık kodlu basamaktan oluşur.

":" her HEX kaydının başını belirtir.

"ll" ve "10", veri uzunluğu alanıdır; bu, kayıttaki veri baytlarının (dd) sayısını gösterir.

"aaaa" ve "2462" adres alanını oluşturur; bu, kayıttaki verilerin başlangıç adresini temsil eder.

"tt" ve "00", HEX kayıt türünü temsil eden alanlardır; bu alanlar aşağıdaki verilerden birini içerebilir:

00 – veri kaydı
01 – dosya sonu kaydı
02 – Genişletilmiş Segment Adres Kaydı
04 – Genişletilmiş Doğrusal Adres Kaydı

"dd…" ve "464C5549442050524F46494C4500464C" veri alanıdır; bunlar birer veri baytını temsil eder. Bir kayıtta birçok veri baytı bulunabilir. Kayıttaki veri baytlarının sayısı, veri uzunluğu alanında (ll) belirtilen sayı ile eşleşmelidir.

"cc" ve "33" sağlama toplamı alanını oluşturur; bu, söz konusu kaydın sağlama toplamını temsil eder. Sağlama toplamı, kayıttaki onaltılık kodlanmış tüm rakam çiftlerinin değerlerinin toplanması ve 256 moduna göre hesaplanmasıyla elde edilir; bu işlemde aşağıdaki tamamlayıcı değerler kullanılır.

Hex dosyası nasıl açılır?

Bir hex dosyasını açmanın, hex düzenleyici yazılımı ve çevrimiçi hex düzenleyici gibi birkaç farklı yolu vardır. Bilgisayarınızda bir hex düzenleyici yüklüyse, hex dosyasını düzenleyicide açmak için üzerine çift tıklamanız yeterlidir. Alternatif olarak, hex dosyasına sağ tıklayıp bağlam menüsünden "Şununla Aç" seçeneğini belirleyebilir, ardından programlar listesinden bir hex düzenleyici seçebilirsiniz.

1. Windows Not Defteri

Eğer bilgisayarınızda bir hex editörü yüklü değilse, hex dosyasını açmak için Windows'un yerleşik Not Defteri programını kullanabilirsiniz. Bu, mevcut seçenekler arasında en kolay yoldur. Ancak, hex dosyaları insanlar tarafından okunmak üzere tasarlanmadığından, dosyanın içeriği muhtemelen anlamsız karakterler dizisi gibi görünecektir.

Windows Notepad
Windows Notepad

2. Onaltılık Düzenleyici Yazılımı

Notepad++, ImHex, Free Hex Editor Neo, WinHex ve daha pek çok hex dosyası düzenleme yazılımı mevcuttur. Her birinin kendine özgü özellikleri ve işlevleri vardır; kendinize en uygun olanını seçebilirsiniz.

2.1 Notepad++

Desteklenen platform: Yalnızca Windows

Notepad++, birçok programlama dilini destekleyen ücretsiz bir kaynak kodu düzenleyicisi ve Notepad'in yerine geçen bir uygulamadır. Windows işletim sistemleri için tasarlanmış olup HTML, CSS, JavaScript, PHP ve diğer programlama dillerini düzenlemek için kullanılabilir. Sözdizimi vurgulaması, otomatik tamamlama ve daha birçok özelliğe sahiptir.

Notepad++ Hex-Editor
Notepad++ Hex-Editor

2.2 ImHex

Desteklenen platformlar: Windows, macOS, Linux

ImHex, tersine mühendislik uzmanları ve yazılım geliştiriciler için özel olarak tasarlanmış güçlü bir onaltılık düzenleyicidir.

ImHex Hex Editor
ImHex Hex Editörü (kaynak: imhex.werwolv.net)

2.3 Ücretsiz Hex Editor Neo

Desteklenen platform: Windows

HHD Software Ltd, Windows platformu için hızlı bir ikili dosya düzenleyicisi olan Free Hex Editor Neo'yu geliştirmiştir. Bu program ücretsiz olarak sunulmaktadır ve tüm temel düzenleme işlevlerini sunmaktadır. Elbette, onaltılık dosyalarınızı analiz etmek için de kullanışlıdır.

Free Hex Editor Neo software
Ücretsiz Hex Editor Neo (kaynak: HHD Software Ltd.)

3. Çevrimiçi Hex Düzenleyici

Bilgisayarınızda bir hex editörü yazılımı yoksa, alternatif olarak çevrimiçi bir editör de kullanabilirsiniz. Bu konuda, kullanımı kolay bir çevrimiçi hex editörü öneriyoruz: hexed.it

Online Hex Editor: HexEd.it
Online Hex Editor: HexEd.it

Gördüğünüz gibi, bu çevrimiçi hex editörü üst, sol, orta ve sağ bölümlere ayrılmıştır.

Üst araç çubuğu, yeni dosya oluşturma, dosya açma ve widget'lar gibi işlevleri içerir. Kendi hex dosyanızı açmak için, üst paneldeki "dosya aç" menüsüne tıklamanız yeterlidir. Sol

tarafta, farenizle seçtiğiniz dosya verilerinin içeriğine göre çeşitli tabanları otomatik olarak dönüştürecek veri denetleyicisi bulunmaktadır.

Ortadaki alan dosya içeriğidir ve sağdaki alan ise dosyanın bazı öznitelik bilgileridir.

Hex Dosyası ve Bin Dosyası

HEX ve BIN dosyaları, sıkça kullandığımız iki dosya biçimidir. Aşağıda, bu iki dosya biçimi arasındaki farka dair kısa bir açıklama yer almaktadır:

  • – Hex dosyası, onaltılık (16 tabanlı) formatta veri içeren bir dosyadır; bin dosyası ise ikili veri içeren bir dosyadır.
  • – Hex dosyaları genellikle insan tarafından okunabilir bir formatta olması gereken ürün yazılımı veya diğer veriler için kullanılırken, bin dosyaları genellikle makine tarafından okunabilir bir formatta olması gereken veriler için kullanılır.
  • – Hex dosyaları genellikle bin dosyalarından daha büyüktür, çünkü bir hex dosyasında her bir veri baytı iki karakter kaplarken (her nibble için bir karakter), bir bin dosyasında her bir veri baytı sadece sekiz bit kaplar.

Hex Dosyasını İkili Dosyaya Dönüştür

Bir hex dosyası, onaltılık veriler içeren bir dosyadır. Onaltılık veriler, ikili verileri 16 tabanlı sayı sistemini kullanarak temsil etmenin bir yoludur. İkili verilerin her bir baytı, iki onaltılık basamakla temsil edilir. Örneğin, "11" bayt değeri bir hex dosyasında "0x11" olarak gösterilir.

Bir hex dosyasını ikiliye dönüştürmek için, önce onaltılık verilerin nasıl temsil edildiğini anlamanız gerekir. Her onaltılık basamak, dört bitlik veriyi temsil eder. İlk onaltılık basamak en önemli basamaktır ve ikinci onaltılık basamak en az önemli basamaktır. Örneğin, "0x11" onaltılık değeri ikili sistemde şu şekilde temsil edilir:

En önemli basamak (1), aşağıdaki ikili değerleri temsil eder:

0 0 0 1

En az anlamlı basamak (1) aşağıdaki ikili değerleri temsil eder:

0 0 0 1

Bu nedenle, onaltılık değer "0x11", ikili değer "00010001" ile eşdeğerdir.

Abone ol

Aylık blog güncellemeleri, teknoloji haberleri ve vaka analizleri almak için abone listemize katılın. Asla spam göndermeyeceğiz ve istediğiniz zaman aboneliğinizi iptal edebilirsiniz.

Yazar Hakkında

Picture of Aidan Taylor
Aidan Taylor

I am Aidan Taylor and I have over 10 years of experience in the field of PCB Reverse Engineering, PCB design and IC Unlock.

Yardıma mı ihtiyacınız var?

Scroll to Top

Instant Quote