Hello world, LED villogtatás MCS-51 (Intel 8051, 8052) mikrovezérlőhöz

A következő kód a P1.0-ás porta kötött (tranzisztorral meghajtott) LED-et kapcsolgatja ki-be kb. 500 ms-onként, ha 11,0592 MHz-es kvarcot használunk.
blink.a51:

; LED blinking
    .area RSEG    (ABS,DATA)
    .org 0x0000
    .area HOME    (CODE)
    .area CSEG    (CODE)

loop:
    mov     b, #0xFF
    acall   delay
    clr     p1.0
    mov     b, #0xFF
    acall   delay
    setb    p1.0

    ajmp    loop

delay:
    mov     acc, #0xFF
delay_loop:
    djnz    acc, delay_loop
    mov     acc, #0xFF
    djnz    b, delay_loop
    ret

Fordítás az SDCC fordítóban található sdas8051 assemblerrel lehetséges:
sdas8051 -los blink.rel blink.a51
sdcc --model-small --code-size 32768 blink.rel

A keletkező blink.ihx fájlt kell a programmemóriába égetni:
:1D00000075F0FF1110C29075F0FF1110D290010075E0FFD5E0FD75E0FFD5F0F722EC
:00000001FF