fork download
  1. global _start
  2.  
  3. section .data
  4. buf db ' ',0xa ; буфер выводимой строки
  5. len equ $ - buf ; длина выводимой строки
  6.  
  7. _start:
  8. mov dh,4
  9. mov dl,4
  10. rows:
  11. test dl,dl
  12. je exit
  13. mov al,'E'
  14. sub al,dl
  15. xor ebx,ebx
  16. cols:
  17. mov ah,'E'
  18. sub ah,dh
  19. mov [buf+ebx],al
  20. mov [buf+ebx+1],ah
  21. add ebx,3
  22. dec dh
  23. cmp dh,0
  24. jne cols
  25. mov dh,4
  26. call print_line
  27. dec dl
  28. jmp rows
  29.  
  30. print_line:
  31. push eax
  32. push ebx
  33. push ecx
  34. push edx
  35. mov edx,len
  36. mov ecx,buf
  37. mov ebx,1
  38. mov eax,4
  39. int 0x80
  40. pop edx
  41. pop ecx
  42. pop ebx
  43. pop eax
  44. ret
  45.  
  46. exit:
  47. mov eax, 01h
  48. xor ebx, ebx
  49. int 80h
Success #stdin #stdout 0s 140KB
stdin
Standard input is empty
stdout
AA AB AC AD
BA BB BC BD
CA CB CC CD
DA DB DC DD