section .data
    ; 1. Создать переменную с текстом
    text_var db 'Assembler – low level programming', 0
 
    ; 2. Создать переменную со значением 40
    var1 dd 40
 
    ; 3. Создать переменную со значением 36
    var2 dd 36
 
section .bss
    ; Переменные для хранения результатов
    result1 resd 1  ; для вычитания
    result2 resd 1  ; для сложения
    result3 resd 1  ; для сложения с непосредственным значением
    result4 resd 1  ; для вычитания непосредственного значения
 
section .text
    global _start
 
_start:
    ; 4. Вычесть из первой вторую (var1 - var2)
    mov eax, [var1]      ; EAX = 40
    sub eax, [var2]      ; EAX = 40 - 36 = 4
    mov [result1], eax   ; сохраняем результат
 
    ; 5. Сложить первую со второй (var1 + var2)
    mov eax, [var1]      ; EAX = 40
    add eax, [var2]      ; EAX = 40 + 36 = 76
    mov [result2], eax   ; сохраняем результат
 
    ; 6. Сложить любое непосредственное значение с первой переменной
    mov eax, [var1]      ; EAX = 40
    add eax, 15          ; EAX = 40 + 15 = 55
    mov [result3], eax   ; сохраняем результат
 
    ; 7. Вычесть из первой переменной любое непосредственное значение
    mov eax, [var1]      ; EAX = 40
    sub eax, 10          ; EAX = 40 - 10 = 30
    mov [result4], eax   ; сохраняем результат
 
    ; Завершение программы
    mov eax, 1
    mov ebx, 0
    int 0x80
				c2VjdGlvbiAuZGF0YQogICAgOyAxLiDQodC+0LfQtNCw0YLRjCDQv9C10YDQtdC80LXQvdC90YPRjiDRgSDRgtC10LrRgdGC0L7QvAogICAgdGV4dF92YXIgZGIgJ0Fzc2VtYmxlciDigJMgbG93IGxldmVsIHByb2dyYW1taW5nJywgMAogICAgCiAgICA7IDIuINCh0L7Qt9C00LDRgtGMINC/0LXRgNC10LzQtdC90L3Rg9GOINGB0L4g0LfQvdCw0YfQtdC90LjQtdC8IDQwCiAgICB2YXIxIGRkIDQwCiAgICAKICAgIDsgMy4g0KHQvtC30LTQsNGC0Ywg0L/QtdGA0LXQvNC10L3QvdGD0Y4g0YHQviDQt9C90LDRh9C10L3QuNC10LwgMzYKICAgIHZhcjIgZGQgMzYKCnNlY3Rpb24gLmJzcwogICAgOyDQn9C10YDQtdC80LXQvdC90YvQtSDQtNC70Y8g0YXRgNCw0L3QtdC90LjRjyDRgNC10LfRg9C70YzRgtCw0YLQvtCyCiAgICByZXN1bHQxIHJlc2QgMSAgOyDQtNC70Y8g0LLRi9GH0LjRgtCw0L3QuNGPCiAgICByZXN1bHQyIHJlc2QgMSAgOyDQtNC70Y8g0YHQu9C+0LbQtdC90LjRjwogICAgcmVzdWx0MyByZXNkIDEgIDsg0LTQu9GPINGB0LvQvtC20LXQvdC40Y8g0YEg0L3QtdC/0L7RgdGA0LXQtNGB0YLQstC10L3QvdGL0Lwg0LfQvdCw0YfQtdC90LjQtdC8CiAgICByZXN1bHQ0IHJlc2QgMSAgOyDQtNC70Y8g0LLRi9GH0LjRgtCw0L3QuNGPINC90LXQv9C+0YHRgNC10LTRgdGC0LLQtdC90L3QvtCz0L4g0LfQvdCw0YfQtdC90LjRjwoKc2VjdGlvbiAudGV4dAogICAgZ2xvYmFsIF9zdGFydAoKX3N0YXJ0OgogICAgOyA0LiDQktGL0YfQtdGB0YLRjCDQuNC3INC/0LXRgNCy0L7QuSDQstGC0L7RgNGD0Y4gKHZhcjEgLSB2YXIyKQogICAgbW92IGVheCwgW3ZhcjFdICAgICAgOyBFQVggPSA0MAogICAgc3ViIGVheCwgW3ZhcjJdICAgICAgOyBFQVggPSA0MCAtIDM2ID0gNAogICAgbW92IFtyZXN1bHQxXSwgZWF4ICAgOyDRgdC+0YXRgNCw0L3Rj9C10Lwg0YDQtdC30YPQu9GM0YLQsNGCCiAgICAKICAgIDsgNS4g0KHQu9C+0LbQuNGC0Ywg0L/QtdGA0LLRg9GOINGB0L4g0LLRgtC+0YDQvtC5ICh2YXIxICsgdmFyMikKICAgIG1vdiBlYXgsIFt2YXIxXSAgICAgIDsgRUFYID0gNDAKICAgIGFkZCBlYXgsIFt2YXIyXSAgICAgIDsgRUFYID0gNDAgKyAzNiA9IDc2CiAgICBtb3YgW3Jlc3VsdDJdLCBlYXggICA7INGB0L7RhdGA0LDQvdGP0LXQvCDRgNC10LfRg9C70YzRgtCw0YIKICAgIAogICAgOyA2LiDQodC70L7QttC40YLRjCDQu9GO0LHQvtC1INC90LXQv9C+0YHRgNC10LTRgdGC0LLQtdC90L3QvtC1INC30L3QsNGH0LXQvdC40LUg0YEg0L/QtdGA0LLQvtC5INC/0LXRgNC10LzQtdC90L3QvtC5CiAgICBtb3YgZWF4LCBbdmFyMV0gICAgICA7IEVBWCA9IDQwCiAgICBhZGQgZWF4LCAxNSAgICAgICAgICA7IEVBWCA9IDQwICsgMTUgPSA1NQogICAgbW92IFtyZXN1bHQzXSwgZWF4ICAgOyDRgdC+0YXRgNCw0L3Rj9C10Lwg0YDQtdC30YPQu9GM0YLQsNGCCiAgICAKICAgIDsgNy4g0JLRi9GH0LXRgdGC0Ywg0LjQtyDQv9C10YDQstC+0Lkg0L/QtdGA0LXQvNC10L3QvdC+0Lkg0LvRjtCx0L7QtSDQvdC10L/QvtGB0YDQtdC00YHRgtCy0LXQvdC90L7QtSDQt9C90LDRh9C10L3QuNC1CiAgICBtb3YgZWF4LCBbdmFyMV0gICAgICA7IEVBWCA9IDQwCiAgICBzdWIgZWF4LCAxMCAgICAgICAgICA7IEVBWCA9IDQwIC0gMTAgPSAzMAogICAgbW92IFtyZXN1bHQ0XSwgZWF4ICAgOyDRgdC+0YXRgNCw0L3Rj9C10Lwg0YDQtdC30YPQu9GM0YLQsNGCCiAgICAKICAgIDsg0JfQsNCy0LXRgNGI0LXQvdC40LUg0L/RgNC+0LPRgNCw0LzQvNGLCiAgICBtb3YgZWF4LCAxCiAgICBtb3YgZWJ4LCAwCiAgICBpbnQgMHg4MA==