%macro write 2 mov ebx, 1 mov ecx, %1 mov edx, %2 mov eax, 4 int 0x80 %endmacro section .bss u: .sn resb 65 .nn resb 65 .rl resb 65 .vs resb 65 .mc resb 65 .dn resb 65 .e: section .text global _start s db 0x20 n db 0x0a _start: mov ebx, u mov eax, 122 int 0x80 write u.sn, u.nn-u.sn write s, 1 write u.nn, u.rl-u.nn write s, 1 write u.rl, u.vs-u.rl write s, 1 write u.mc, u.dn-u.mc write n, 1 mov ebx, 0 mov eax, 1 int 0x80