Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
 
Aliaxandr
7 / 7 / 8
Регистрация: 03.07.2015
Сообщений: 219
1

Сопроцессор

18.01.2016, 21:26. Просмотров 355. Ответов 1
Метки нет (Все метки)

Имеется следующее задание:
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
xor bl,bl  ;обнуляем bx
finit         ;инициализация сопроцессора
fld1         ;ложим на стек 1
fld1         ;ложим на стек 1
fadd        ;складываем 1+1 и на вершине стека будет 2
fsqrt        ;на вершине стека теперь будет 2^1/2
fldpi         ;ложим на стек число пи
fcompp    ;вещественное сравнение с двойным выталкиванием??? это как??? выталкивание==снять со стека?????
fsstw ax  ;эту команду не нашёл в интернете(проверял не описка)
sahf         ;STORE AH REGISTER INTO FLAGS до конца не понимаю как это работает
ja al         ;jump above - до конца не понимаю как это работает
inc bl        ;инкрементация регистра bl
a1:
inc bl        ;инкрементация регистра bl
В конечно итоге значение регистра bl будет равняться 1.
Подскажите почуму именно 1? Не могу до конца разобраться с некоторыми командами данного кода

Добавлено через 6 часов 2 минуты
Всетаки в строке 9 должно быть
Assembler
1
 fstsw ax
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.01.2016, 21:26
Ответы с готовыми решениями:

Сопроцессор
Подскажите, пожалуйста, как можно реализовать данные вычисления через...

Ассемблер. Сопроцессор
Помогите найти ошибку. Ассемблер, сопроцессор. Проблема в том, что в функции...

Сопроцессор, возведение в степень
mov ax, @data mov ds, ax lea dx, m1 mov ah, 09 ; на ввод n...

Сопроцессор и хранение вещественных чисел
вопрос весьма прозаичен, но от этого не становится менее важным (для меня)....

Сопроцессор, что будет на вершине стека?
finit fldpi fld1 fadd fsqrt fchs Поскажите, что будет в начале и в...

1
Mikl___
Автор FAQ
13304 / 6377 / 629
Регистрация: 11.11.2010
Сообщений: 11,539
19.01.2016, 03:46 2
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
xor bl,bl  ;обнуляем BL
finit         ;инициализация сопроцессора
fld1         ;st(0)=1
fld1         ;st(0)=1 st(1)=1
fadd        ;st(0)=st(0)+st(1)=2 st(1)=1
fsqrt        ;st(0)=1,4142135623730950488016887242097 st(1)=1
fldpi        ;st(0)=3,1415926535897932384626433832795 st(1)=1,4142135623730950488016887242097 st(2)=1
fcompp    ;st(0)>st(1) ? содержимое st(0) и st(1) выталкивается теперь st(0)=1
fstsw ax  ;содержимое регистра состояния в регистр АХ
sahf         ;содержимое из регистра AH в 8 младших битов регистра ЕFLAGS 
ja al         ;если st(0)>st(1) переход на а1 (3,14 > 1,4142)
inc bl        ; <-- этого не происходит
a1:
inc bl
читай http://www.cyberforum.ru/assembler-articles/thread1005284.html
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.01.2016, 03:46

Сопроцессор
Люди, помогите пожалуйста! Как скопировать значение из St(0) в St(1) в...

сопроцессор
Вообще есть такое: {Вычислить заданное смешанное арифметическое выражение для...

Сопроцессор.... на TASM
Нужно уравнение график которого плавная,замкнутая и желательно сложная...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru