2016-03-28 17 views
0
*Error: value xxx is out of range, valid values are between -128 and 127. 

Bu hatayı tüm kodlarımda yaşıyorum.jr cc, label (değer aralık dışı) kullanılarak hata.

talimat jr cc, label bu açıklıyor: göreli atlama sınırlı yelpazesine sahiptir

Not olduğunu [-128, 127] JR talimat aşağıdaki öğretim birinci bayt adresi dan.

Ben jr sonra talimat nop koyarak çalıştı ama yine de bu hata var.

Belki umarım bu işe iyi anlamak kalmamasıdır. Birisi bana daha fazlasını anlatabilirse (veya örnekler verirseydi) bu harika olurdu. Teşekkür

aralık sorununun dışında
+1

Sizin atlama hedef çok uzak. Koşullu atlamayı tersine çevirin ve daha uzun aralıklı koşulsuz atlamayı atlamak için kullanın. – Jester

+1

Bunu Z80 uyumlu bir mimaride alıyorum? Eğer öyleyse, sınırsız bir branş aralığı için 'JR' yerine 'JP' yerine ekstra bir byte harcıyorsunuz. – doynax

cevap

0

bir mutlak sıçrama (jp) için göreceli atlama (jr) değiştirerek çözülebilir. atlama mevcut program aksi yönünde olduğu

atlama göre (JR) talimatları kolay kod yer değiştirme olanak sağlar. Örneğin, RAM fonksiyonları genellikle montaj yazılır ve flaş RAM yeniden yerleştirilir. Bir atlama (JP) talimatı, bu durumda çalışmayacak çünkü bir flaş konumu olmalıdır ve belirtilen RAM konumu değil. yerine JP JR kullanılması amaçlanan RAM konumu atlayacaktır.

İlgili konular