![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 26.05.2009
Сообщений: 21
|
![]() Не могу освоить работу с переменными большого размера, например, требуются операции для чисел с плавающей запятой И хочеться использовать 80 битовые переменные (тип dt). Немогу понять как присвоить такой переменной значение ? Знаю что в облать большую по размеру можно занести переменную, которая по размеру меньше c помощью команды ptr (word ptr, byte ptr) Как переменной типа dt присвоить значение регистра? или перекинуть туда значение из dd ? (целесообразно ли так делать?) Как запихнуть введённое с клавиатуры число в этот тип? Помогите люди добрые!Пишу на MASMе 10. |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 31.05.2009
Сообщений: 786
|
![]()
например так:
инициализация в тексте программы: Код:
записать значение: Код:
|
![]() |
![]() |
![]() |
#3 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
![]()
Ra88
Не могу понять как присвоить такой переменной значение ? x dt 3.1415926535897932384626433832795 Как переменной типа dt присвоить значение регистра? mov dword ptr x,ecx mov dword ptr x+4,ebx mov word ptr x+8,ax перекинуть туда значение из dd ? пусть y и z переменные типа DWORD push y pop dword ptr x push z pop dword ptr x+4 Как запихнуть введённое с клавиатуры число в этот тип? должна быть подпрограмма, которая переведет строку символов, введенных с клавиатуры в вещественное число типа dt |
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 26.05.2009
Сообщений: 21
|
![]()
Всем спасибо) Но alexcoder представил верный способ, а варианты Mikl__а по присвоению значения регистра и dd не получились.
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 04.06.2010
Сообщений: 212
|
![]()
вот тебе литература почитай по сопрцессор.
прав до там написано много лишнего, но зато понятно http://depositfiles.com/files/r965zkaku
мой сайт http://wanes101.16mb.com/myblog
|
![]() |
![]() |
![]() |
#6 |
Python,C++,ASM,Php
Пользователь
Регистрация: 29.08.2010
Сообщений: 58
|
![]()
Если не ошибаюсь все сегментые регистры 80-битные, 16-бит нормальные, а остальные теневые.
Хакер - это не ламер с завышенным самомнением, а программист с заниженной зарплатой.
Нелегка и неказиста жизнь простого программиста. |
![]() |
![]() |
![]() |
#7 | |
Форумчанин
Регистрация: 04.06.2010
Сообщений: 212
|
![]() Цитата:
У процессора сегментные 16-бит, если процессор 8086, 286 то пользовательские 16-бит или у 386 и страрше 32-бит. Есть и другие регистры у процессора для управленния компьютером. Про остальные я не читал. Если хочеш прочитать, то можно найти много полезного в книги "ASSEBLER учебный курс" В. И. Юрова в уроке по зазщищённому режиму процессора.
мой сайт http://wanes101.16mb.com/myblog
|
|
![]() |
![]() |
![]() |
#8 |
Python,C++,ASM,Php
Пользователь
Регистрация: 29.08.2010
Сообщений: 58
|
![]()
Не знаю на счёт сопроцесора, но в документации по 386 есть описание стека главного процессора, где указано, что16-бит - общее, а остальное теневое, т.е. используется процессором для кэша значений регистра.
Хакер - это не ламер с завышенным самомнением, а программист с заниженной зарплатой.
Нелегка и неказиста жизнь простого программиста. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Битовые операции СИ | savra | Помощь студентам | 0 | 10.03.2010 19:31 |
Битовые операции | ("")(Э_Є)("") | Общие вопросы C/C++ | 4 | 03.07.2009 19:15 |
Битовые операции | DrAlexx2121 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 4 | 14.06.2008 22:26 |
Битовые операции | LEX.darnica | Помощь студентам | 14 | 23.12.2007 19:40 |
Битовые операции | zetrix | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 5 | 15.12.2006 11:08 |