v1lat
1

Факториал некторого числа записан в eax, а нужно вывести этот факториал в ebx

28.02.2013, 01:42. Показов 1803. Ответов 3
Метки нет (Все метки)

Хочу сделать код факториал некторого числа записан в eax, а нужно вывести этот факториал в ebx и где-то ошибка (
не могли бы помочь пожалуйста... а то не могу найти
Assembler
1
2
3
4
5
6
7
movl eax, ebx 
 movl ebx, 0 
 factcycle: 
     inc ebx 
    divl ebx 
   cmp eax,1 
 jne factcycle
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.02.2013, 01:42
Ответы с готовыми решениями:

Описать рекурсивные функции вещественного типа, вычисляющие факториал и двойной факториал заданного числа
Описать рекурсивные функции Fact(N) и Fact2(N) вещественного типа, вычисляющие значения факториала...

Найдите число, факториал которого лежит в регистре %eax
Здравствуйте! В ассамблере не шарю,но нужно выполнить такую задачку: Ограничение по времени...

Вывести факториал числа
Здраствуйте. Пользователь вводит любое число, а программа должна вывести факториал этого числа. ...

Вывести числа последовательности, где i - факториал
Ребят, помогите с алгоритмом решения данной задачи: Для данных M, N вывести все числа...

3
Ушел с форума
Автор FAQ
15444 / 7283 / 928
Регистрация: 11.11.2010
Сообщений: 13,118
28.02.2013, 04:28 2
поиском пользоваться не пробовал?
программа которая вычислит число, факториал которого лежит в регистре %eax. В конце вычисления число лежит в %ebx на синтаксис AT&T переводи сам
Assembler
1
2
3
4
5
6
7
8
9
    mov eax,479001600; 12!=479001600
    mov ebx,2
@@: xor edx,edx
    div ebx
    cmp eax,1
    jz @f
    inc ebx
    jmp @b
@@:   ...
Число больше чем 12! в 32-разрядный регистр eax не поместится, судя по команде movl и divl тебе нужен синтаксис AT&T, но тогда должно быть cmpl, xorl и %eax, %ebx и операнды в командах должны следовать в обратном порядке
0
v1lat
28.02.2013, 07:45 3
Mikl___, объясни пожалуйста свой код(хоть немного), просто я видел твою ту тему но не совсем понял почему ты сразу например в eax ставишь 12! .
Ушел с форума
Автор FAQ
15444 / 7283 / 928
Регистрация: 11.11.2010
Сообщений: 13,118
28.02.2013, 08:49 4
v1lat,
я могу регистр EAX загрузить любым числом, просто если в ЕАХ было 479001600 тогда ЕВХ вернет 12, если в ЕАХ поместить 720, тогда в ЕВХ будет 6 (6!=720)
еах еbx
22
63
244
1205
7206
50407
403208
3628809
362880010
3991680011
47900160012
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.02.2013, 08:49
Помогаю со студенческими работами здесь

Факториал. Определить максимальное число, факториал которого хранится в переменной типа int
/*Доброго времени суток ! Задача такова: Пользователь вводит число с клавы. Вывести на экран...

Вычислить факториал введенного числа n! (0<n<1001) и вывести результат
Вычислить факториал введенного числа n! (0&lt;n&lt;1001) и вывести результат Помогите пожалуйста...

не получается mov eax,[ebx]
.386 .model flat,stdcall option casemap: none .data .code start: mov ebx,02h

нужно составить программу,которая для всех натуральных чисел n>0 высчитывает факториал числа n (n!)
добрый день! я абсолютный новичок в использовании программы eclipse(java). прошла первая неделя...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru