extern printf
extern fflush
extern scanf
section .data
fmt db "%d" , 0
fmtprint db "%d" , 10 , 0
section .bss
bil1 resd 1
template resd 1
section .text
global main
main:
push bil1
push fmt
call scanf
add esp , 8
mov dword [ template] , 0
mov dword [ template+ 4 ] , 1
mov ecx , [ bil1]
mov esi , 2
mov edi , [ bil1]
LOOP1:
mov ecx , esi
dec ecx
mov eax , [ template+ 4 * ecx ]
dec ecx
add eax , [ template+ 4 * ecx ]
mov dword [ template+ 4 * esi ] , eax
add esi , 1
cmp esi , [ bil1]
jbe LOOP1
mov eax , [ template+ 4 * edi ]
push eax
push fmtprint
call printf
add esp , 8
push 0
call fflush
exit:
mov eax , 1
mov ebx , 0
int 0x80
ZXh0ZXJuIHByaW50ZgpleHRlcm4gZmZsdXNoCmV4dGVybiBzY2FuZgogICAgCnNlY3Rpb24gLmRhdGEKICAgIGZtdCBkYiAiJWQiLCAwCiAgICBmbXRwcmludCBkYiAiJWQiLCAxMCwgMAogICAgCnNlY3Rpb24gLmJzcwogICAgYmlsMSByZXNkIDEKICAgIHRlbXBsYXRlIHJlc2QgMQogIAogICAgIApzZWN0aW9uIC50ZXh0CiAgICBnbG9iYWwgbWFpbgogICAgICAgIAptYWluOgogICAgcHVzaCBiaWwxCiAgICBwdXNoIGZtdAogICAgY2FsbCBzY2FuZgogICAgYWRkIGVzcCwgOAogICAgIAogICAgbW92IGR3b3JkW3RlbXBsYXRlXSwgMAogICAgbW92IGR3b3JkW3RlbXBsYXRlKzRdLCAxCiAgICAgCiAgICBtb3YgZWN4LCBbYmlsMV0KICAgIG1vdiBlc2ksIDIKICAgIG1vdiBlZGksIFtiaWwxXQogICAgICAKICAgTE9PUDE6ICAKICAgIG1vdiBlY3gsIGVzaQogICAgZGVjIGVjeAogICAgbW92IGVheCwgW3RlbXBsYXRlKzQqZWN4XQogICAgZGVjIGVjeAogICAgYWRkIGVheCwgW3RlbXBsYXRlKzQqZWN4XQogICAgbW92IGR3b3JkW3RlbXBsYXRlKzQqZXNpXSAsIGVheAogICAgYWRkIGVzaSwgMQogICAgY21wIGVzaSwgW2JpbDFdCiAgICBqYmUgTE9PUDEKICAgICAKICAgIG1vdiBlYXgsW3RlbXBsYXRlKzQqZWRpXQogICAgcHVzaCBlYXgKICAgIHB1c2ggZm10cHJpbnQKICAgIGNhbGwgcHJpbnRmCiAgICBhZGQgZXNwLCA4CiAgICAgICAgICAKICAgIHB1c2ggMAogICAgY2FsbCBmZmx1c2gKICAgICAgICAgIApleGl0OgogICAgbW92IGVheCwgMQogICAgbW92IGVieCwgMAogICAgaW50IDB4ODA=