Menu
Coddy logo textTech

Çıkış Kodları

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

Programınız sonlandığında, işletim sistemine küçük bir sayı geri gönderir. Bu sayıya çıkış kodu veya çıkış durumu denir.

Çıkış kodları neden önemlidir:

Betikler, bir programın başarılı olup olmadığını kontrol etmek için çıkış kodlarını kullanır. Örneğin, bir yedekleme betiği yalnızca önceki komut başarılı olduysa devam edebilir.

Çıkış kodları hata ayıklamaya da yardımcı olur. Farklı sorunlar için farklı hata kodları kullanabilirsiniz.

Ayrıca programları birbirine zincirleyebilirsiniz, böylece bir program yalnızca bir önceki başarılı olduğunda çalışır. Kabuk, bir sonraki komutu çalıştırmadan önce çıkış kodunu kontrol eder.

Çıkış kodlarının kuralları:

Çıkış koduAnlamı
0Başarılı — her şey çalıştı
1-255Bir şeyler ters gitti

Hata kodlarını seçme:

1'den 255'e kadar herhangi bir sayıyı kullanabilirsiniz. Her bir sayının ne anlama geldiği, programcı olarak size bağlıdır.

Çıkış koduOlası anlamı
1Genel hata
2Eksik giriş dosyası
3İzin reddedildi
4Ağ hatası

 

Bir çıkış kodu ayarlamazsanız ne olur?

exit sistem çağrısından önce her zaman rdi değerini ayarlamalısınız. Eğer unutursanız, rdi yazmaçta kalan çöp veriyi içerir ve programınız rastgele bir kodla çıkış yapar.

challenge icon

Görev

Çıkış kodu 2 ile sonlanan ("file not found" sinyali vermek için) eksiksiz bir assembly programı yazın.

Yazdırma kodu sizin için sağlanmıştır. Sadece exit syscall eklemeniz yeterlidir.

Kendin dene

section .data
    msg db 'Backup complete', 0x0a
    msgLen equ $ - msg

section .text
    global _start

_start:
    ; Mesajı yazdır (test düzeneği tarafından sağlanır)
    mov rax, 1
    mov rdi, 1
    mov rsi, msg
    mov rdx, msgLen
    syscall

    ; Öğrencinin kodu buraya gelir
    %include "solution.asm"
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