Сложение двух цифр - Assembler

Узнай цену своей работы

Формулировка задачи:

написал код (только знакомлюсь с ассемблером)
.386
.model flat, stdcall
.data
x dd 10
y dd 10
.code
start:
mov ecx,x
mov ebx,y
add ecx,ebx
end start
выскакивает ошибка: 1>MASM : fatal error A1017: missing source filename подскажите что сделать

Решение задачи: «Сложение двух цифр»

textual
Листинг программы
; .model TINY       ; DOS  *.com
; .model SMALL      ; DOS  *.exe
; .model FLAT       ; WIN  *.exe
 
; Типичный скелет DOS-файла с укороченными директивами:
;------------------------------------------------------
.386              ;программа для ЦП не ниже 386+
.model  small     ;делаем DOS-EXE
.stack  100h      ;отводим 100h байт для стека
 
.data             ;начало секции данных
Msg     db   13,10,'Hello World!'     ; 13,10 = 0Dh,0Ah = перевод строки
        db   13,10,'------------$'    ; $ = маркер конца текстовой строки для DOS-fn.9
x       dw   10
y       dw   10
z       dw   0
 
.code                           ;начало секции кода
start:
       mov   ax,@data
       mov   ds,ax              ;DS указывает на сегмент данных
 
       mov   ah,9               ;DOS-fn.9 - вывод строки! DS:DX - адрес строки
       mov   dx,offset Msg      ;OFFSET означает адрес
       int   21h
 
       mov   ax,word ptr [x]    ;  ..а WORD PTR - значение
       mov   bx,word ptr [y]
       add   ax,bx              ; X+Y
       mov   word ptr [z],ax    ;сохраняем сумму в переменной(Z)
 
       mov   ah,8               ;ждём нажатия любой клавиши
       int   21h                ; ..(чтоб окно сразу не закрылось)
 
       mov   ax,4C00h           ;функция DOS - выход из программы!
       int   21h             
end start                       ;DOS выполняет программу до этой директивы

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4.143 из 5
Похожие ответы