Z80 atau 8080 Assembly, 21 byte kode mesin
Asumsikan memori yang dipetakan perangkat I / O:
Z80 8080
3A xx xx ld a, (input) lda input; dapatkan karakter input
11 0A 20 ld de, 200ah lxi d, 200ah; ruang & baris baru
21 yy yy ld hl, output lxi h, output; dapatkan alamat keluaran
77 ld (hl), sebuah mov m, a; karakter keluaran * 3
77 ld (hl), sebuah mov m, a
77 ld (hl), sebuah mov m, a
73 ld (hl), e mov m, e; output baris baru
77 ld (hl), sebuah mov m, a; karakter keluaran
72 ld (hl), d mov m, d; ruang output
77 ld (hl), sebuah mov m, a; karakter keluaran
73 ld (hl), e mov m, e; output baris baru
77 ld (hl), sebuah mov m, a; karakter keluaran * 3
77 ld (hl), sebuah mov m, a
77 ld (hl), sebuah mov m, a
76 berhenti hlt; atau ret C9
Tidak perlu penerjemah!
Hexdump:
0000: 3A 00 FF 11 0A 20 21 01 FF 77 77 77 73 77 72 77
0010: 73 77 77 77 76
di mana alamat input pada FF00h dan alamat output dipetakan pada FF01h. Alamat aktual akan tergantung pada perangkat keras yang sebenarnya. Tentu saja ini mengasumsikan I / O adalah memori yang dipetakan. Jika dipetakan I / O, akan butuh beberapa byte tambahan karena instruksi I / O Z80 & 8080 masing-masing dua byte. Ini juga mengasumsikan perangkat output menafsirkan 0Ah sebagai baris baru dan tidak memerlukan CR (0Dh) yang akan menambah 4 byte tambahan ke program.