diff --git a/ws1/Task1.asm b/ws1/Task1.asm
new file mode 100644
index 0000000000000000000000000000000000000000..817707925f4d466e163384fe5bfc0d7c19010bae
--- /dev/null
+++ b/ws1/Task1.asm
@@ -0,0 +1,21 @@
+%include "src/asm_io.inc"
+
+segment .data
+    integer1 dd 15      ; first int
+    integer2 dd 6       ; second int
+
+segment .bss
+    result resd 1       ; space for the result
+
+segment .text
+global asm_main
+
+asm_main:
+    pusha                     ; save all registers
+    mov eax, [integer1]      ; load integer1 into eax
+    add eax, [integer2]      ; add integer2 to eax
+    mov [result], eax        ; store the result
+    call print_int           ; print the result
+    popa                     ; restore all registers
+    mov eax, 0               ; return 0
+    ret
diff --git a/ws1/src/asm_io.o b/ws1/src/asm_io.o
new file mode 100644
index 0000000000000000000000000000000000000000..19194a8b7acb319d6a0736df180e04cffcf79e46
Binary files /dev/null and b/ws1/src/asm_io.o differ
diff --git a/ws1/task1.o b/ws1/task1.o
new file mode 100644
index 0000000000000000000000000000000000000000..f78efb05cb60ce9bef772eff36e56dcee269b2a7
Binary files /dev/null and b/ws1/task1.o differ