Составить программу, выводящую на экран и в задаваемый с клавиатуры файл десятичное представление факториала. Должна быть работоспособна для вычисления 1000! Число тоже нужно задавать с клавиатуры с контролем ввода.
самый читерский способ будет: 1) пишешь на Си всё 2) в опциях компиляции настраиваешь - вывод asm и кода в файл 3) компилишь файл 4) получаешь файл на ассемблере, причем рядом с каждым блоком асм инструкций будет описание что он делает на Си 5) оформляешь всё как тебе надо и готово )) Главное отключить оптимизацию, а то потом в коде хрен разберешься
Теперь автор создаст несколько тем. Некоторые из них: "как на Си посчитать факториал", "как выключить оптимизацию", "как включить вывод в файл..." и т.д..
я не знаком с языком C, вобще.. Примерный код из инета: masm model small stack 256 .data pole db ? stroka db 0ah, 0dh, 'output:$', 0ah, 0dh .code start: mov ax, @data mov ds, ax mov ah, 01h int 21h ;вводим число mov ah, 09h lea dx, stroka int 21h ;выводим строку output: xor dx, dx xor ah, ah and ax, 0f0fh aad ;преобразовали в двоичное число mov pole, al ;запомнили это число ;сам процесс вычисления факториала mov bx, 1 mov dx, bx m: mov ax, bx mul dl mov bx, ax inc dl cmp pole, dl jne m ;конец процесса вычисления факториала mov ax, bx ;теперь в ax факториал aam or ax, 3030h ;преобразуем его в символьный формат mov bx, ax mov ah, 02h mov dl, 0ah int 21h mov dl, 0dh int 21h mov dx, bx rol dx, 8 int 21h rol dx, 8 int 21h exit: mov ax, 4c00h int 21h end start тут не работает правильно контроль ввода, к тому же не работает до 1000..