Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.12.2007, 13:43   #1
Painsector
Новичок
Джуниор
 
Регистрация: 07.12.2007
Сообщений: 2
По умолчанию Обработка вещественного массива

Помогите разобраться, надо найти из массива все отрицательные числа и вывести их на экран. Я пробовал, с целочисленными все получилос, а вещественные выводят какие то странные числа (типа 3.445522е-35).
Код:
#include <iostream.h>
#define N 3
#define M 4						  				                            

void main()
 {
  float a[N][M],b[N*M];                                
  int i,j;                                      
  cout<<"In:"<<endl;
  for(i=0;i<N;i++)
   {                                                   
    for(j=0;j<M;j++)
     {
      cin>>a[i][j];
     }
   }

   i=0;
  _asm {            
        lea si,a         
        lea di,b    
	mov cx,12   
       }
  M1:
  _asm {                                                             
	mov bx,[si] 
	cmp bx,0
	jge M2	   
	mov [di],bx 
	add di,4h    
	inc i       
       }
  M2:
  _asm {        
	add si,4h                                   
        loop M1                                                     
       }
  cout<<"Result:"<<endl;
  for (j=0;j<i;j++)
   {                            
    cout<<b[j]<<" ";                                             
   }
 }
Painsector вне форума Ответить с цитированием
Старый 07.12.2007, 19:38   #2
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

вещественные числа хранятся в отличном от целночисленных чисел формате. для их обработки надо использовать команды FPU.
rpy3uH вне форума Ответить с цитированием
Старый 10.12.2007, 15:04   #3
Painsector
Новичок
Джуниор
 
Регистрация: 07.12.2007
Сообщений: 2
По умолчанию

эээ, а можно где нить примеры посмотреть? просто я только-только на асс начал програмить...
Painsector вне форума Ответить с цитированием
Старый 10.12.2007, 19:48   #4
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

здесь написано про работу с числами с плавающей точкой.
rpy3uH вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевод вещественного числа в двоичный код shepelin Свободное общение 9 06.07.2008 10:00
[Delphi] создание и обработка двумерного массива screep Помощь студентам 5 16.06.2008 19:27
переписать из массива в линейный двунаправленный список чётные элементы массива Black_Ak24 Помощь студентам 12 08.01.2008 00:44
Для вещественного массива А(20)вычислить наибольшее и наименьшее значения модуля раз-ти между сосед.эл-ми faix Помощь студентам 2 14.11.2007 13:25
Определить, является ли заданная строка правильной записью вещественного числа Sergik1977 Паскаль, Turbo Pascal, PascalABC.NET 2 18.10.2007 16:53