Сложение двух цифр - Assembler
Формулировка задачи:
написал код (только знакомлюсь с ассемблером)
выскакивает ошибка: 1>MASM : fatal error A1017: missing source filename
подскажите что сделать
Листинг программы
- .386
- .model flat, stdcall
- .data
- x dd 10
- y dd 10
- .code
- start:
- mov ecx,x
- mov ebx,y
- add ecx,ebx
- end start
Решение задачи: «Сложение двух цифр»
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 выполняет программу до этой директивы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д