1. Ввести с клавиатуры число и вывести на экран в виде символа *. Пример: ввели 6. Вывод ******
2. Ввести с клавиатуры 2 числа через пробел, вывести их сумму на экран. прервать программу, если ввели другие символы.
Другие языки программирования и технологии
Работа в ассемблере nasm
Обе задачи в одной программе:
global N173305578
extern printf
extern scanf
extern _putch
extern _getch
extern _exit
import printf msvcrt.dll
import scanf msvcrt.dll
import _putch msvcrt.dll
import _getch msvcrt.dll
import _exit msvcrt.dll
section data use32 class = data
Prompt1 db "1. Введите число: ", 0
Format1 db "%u", 0
Prompt2 db 13, 10, 10, "2. Введите 2 числа через пробел: ", 0
Result db "Сумма = %d", 13, 10, 10
db "Для завершения работы нажмите любую клавишу... ", 0
Format2 db "%d %d", 0
N resd 1
A resd 1
B resd 1
section code use32 class = code
N173305578:
push Prompt1
call [printf]
push N
push Format1
call [scanf]
add esp, 12
mov ecx, [N]
Loop:
push ecx
push '*'
call [_putch]
add esp, 4
pop ecx
loop Loop
push Prompt2
call [printf]
push B
push A
push Format2
call [scanf]
add esp, 16
cmp eax, 2
jne Quit
mov eax, [A]
add eax, [B]
push eax
push Result
call [printf]
add esp, 8
call [_getch]
Quit:
push 0
call [_exit]

global N173305578
extern printf
extern scanf
extern _putch
extern _getch
extern _exit
import printf msvcrt.dll
import scanf msvcrt.dll
import _putch msvcrt.dll
import _getch msvcrt.dll
import _exit msvcrt.dll
section data use32 class = data
Prompt1 db "1. Введите число: ", 0
Format1 db "%u", 0
Prompt2 db 13, 10, 10, "2. Введите 2 числа через пробел: ", 0
Result db "Сумма = %d", 13, 10, 10
db "Для завершения работы нажмите любую клавишу... ", 0
Format2 db "%d %d", 0
N resd 1
A resd 1
B resd 1
section code use32 class = code
N173305578:
push Prompt1
call [printf]
push N
push Format1
call [scanf]
add esp, 12
mov ecx, [N]
Loop:
push ecx
push '*'
call [_putch]
add esp, 4
pop ecx
loop Loop
push Prompt2
call [printf]
push B
push A
push Format2
call [scanf]
add esp, 16
cmp eax, 2
jne Quit
mov eax, [A]
add eax, [B]
push eax
push Result
call [printf]
add esp, 8
call [_getch]
Quit:
push 0
call [_exit]

Похожие вопросы
- Лабораторная работа по Ассемблеру (TASM), помогите пожалуйста)
- Что может ассемблер?
- Почему многие программисты ненавидят ассемблер?Ведь у него куча плюсов!Он позволяет максимально задействовать
- Вопрос по изучению языка Ассемблера под MS DOS. (Нужны советы по программному обеспечению/программированию)
- С помощью команд fpu вычислить площадь круга, исходя из введѐнного диаметра. Ассемблер...
- Ассемблер сегодня и завтра.
- стоит ли изучать ассемблер, если программирую на Делфи? и вообще реально ли что нибудь хорошее, дельное, нужное написать
- Неужели ассемблер действительно проще чем C ?
- Ассемблер - за сколько его реально базово выучить?
- Ассемблер. помогите решить!!!