Yazan : Şadi Evren ŞEKER

Tek geçişli bir çeviricinin (assembler) karşılaştığı en büyük problem çeviricinin kaynak koddaki (Assembly dilindeki koddaki)  değişken ve etiketlerin kodun ilerleyen kısımlarında tanımlanma ihtimalidir. Bu durumda kodun geri dönerek daha sonradan tanımlanan bilgilerin önceki adreslere yazılması mümkün olmaz.

Tek geçişli çeviricilerde bu problemi çözmek için iki farklı yöntem kulllanılabilir:

1. İleride kullanılacak olan etiketlerin (labels) önceden tanımlanmasıdır. Yani kodda sonradan tanımlanan bir etiket bırakılmaması durumudur.

2. Makine dilindeki kodun hafızada (RAM) üretilmesi yöntemi. Bu yönteme göre yükleyicinin (loader) görevi de atlanarak kod doğrudan hafızada üretilmekte ve çevirici (assembler) daha sonradan değerlerini bulduğu etiketleri hafızadaki ilgili adreslere yazmaktadır.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir