Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 13 
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Advanced member
Статус: Не в сети
Регистрация: 09.03.2004
Откуда: Кишинёв
Silver_Clash
Цитата:
для современных камней количество итераций не слишком критично, а для несовременных?

Задел за живое прямо. Пишу уже несколько лет программу одну для i286(16Мц :lol: ) на си. Вот тут такая оптимизация нужна, чтобы добится приемлемой скорости работы(обработка БД) аш лопаешся. И тут меня поджыдал облом. Мой компилер(BC3.1) отказывается компилить прогу если код болльше 64К преваливает. И приходится вместо оптимизации заниматся даунизацией (умешьшением кода). Не знаете какой нибудь компилятор си для доса без этой проблемы(памяти 640+384, поэтому думаю ватком не покатит)?

Тему отделил. vor



Партнер
 

Member
Статус: Не в сети
Регистрация: 15.04.2004
Откуда: Москва
gcc + go32 (экстендер) или watcom C 10.0 (под любой экстендер)
Оба компилятора бесплатные


 

Advanced member
Статус: Не в сети
Регистрация: 09.03.2004
Откуда: Кишинёв
Avaddon
ок, попробую поискать их. Как то помню давно искал ватком, так запарился. И что такое экстендер?


 

Advanced member
Статус: Не в сети
Регистрация: 30.08.2003
Откуда: Санкт-Петербург
mein
прога, которая расширяет объем доступной памяти.... + добавляет 32-бит фишки (первое - следствие второго)....

_________________
{:€ дед в законе :-) нородный окодемег
почетный пользователь OpenSuSE 11.3
Ремонт и модернизация ноутбуков IBM (Lenovo) ThinkPad


 

а ты пробовал поменять модель памяти? у тебя наверняка стоит tiny, попробуй поставить large (в установках компилятора)


 

Advanced member
Статус: Не в сети
Регистрация: 09.03.2004
Откуда: Кишинёв
Root
Мне в принципе не надо доп. обьём памяти(тока если бесплатно, а не с помощью каких-то драйверов и программ(ну типа дос4гэвэ) - нужно быстродействие в первую очередь), и 32 битных фишек в 16-ти разрядном камне вроде нет.
Alexander Teplitsky
В том то и дело что пробовал. Щас у меня стоит на huge, хотя по характеристикам подходят ещё два варианта как минимум, но ... . Ваще такие глюки идут при написании большой программы, что повесится можно. Я вычитал где-то, что это болезнь BC и вроде как ничем не лечится.


 

Member
Статус: Не в сети
Регистрация: 15.04.2004
Откуда: Москва
mein
А dos4gw это и есть экстендер. И еще, 286 не поддерживает 32-х юитные фишки, но позволяет использовать 20-и битную адресацию (т.е. flat модель памяти).

_________________
Цель жизни - d20 по жизни...


 

Member
Статус: Не в сети
Регистрация: 27.05.2004
Откуда: Москва
dos4gw на 286-м не у дел, т.к. организация защищенного режима 286 и 386 различается.
И вообще, экстендеры тут ни при чем - почему-то сегмент кода только один. Вариант: использование оверлеев.

mein
Попробуй 4-ю или 5-ю версии - они, AFAIR, ДОС еще поддерживают.

_________________
Надо просто осознать, что вы не крупный специалист, прежде чем обманывать (c) Du Volon


 

Advanced member
Статус: Не в сети
Регистрация: 09.03.2004
Откуда: Кишинёв
Satan_Klaus
Ты имеешь в виду 4-ю или 5-ю версию watcom'a? И где их можно скачать? Кроме того у меня в проге используются фишки типа "template,new,class" - это ватком захавает?


 

Member
Статус: Не в сети
Регистрация: 27.05.2004
Откуда: Москва
mein
не, 4-ю или 5-ю версию BC++. А Watcom можно качнуть на openwatcom.org.

_________________
Надо просто осознать, что вы не крупный специалист, прежде чем обманывать (c) Du Volon


 

Advanced member
Статус: Не в сети
Регистрация: 09.03.2004
Откуда: Кишинёв
Satan_Klaus
Пробовал пятую BC - я не смог закомпилить прогу, хотя старался очень сильно. Как найти 4-ю? Поиском искал в гугле ничего не нашёл.


 

Member
Статус: Не в сети
Регистрация: 27.05.2004
Откуда: Москва
mein
А какие ошибки хоть компиляторы выдают?

_________________
Надо просто осознать, что вы не крупный специалист, прежде чем обманывать (c) Du Volon


 

Advanced member
Статус: Не в сети
Регистрация: 09.03.2004
Откуда: Кишинёв
Satan_Klaus
Я точно не помню но такую конструкцию он не хавал:
Код:
#define FP_SEG( fp )( (unsigned )( void _seg * )( void far * )( fp ))
#define FP_OFF( fp )( (unsigned )( fp ))

void puttext(int x1,int y1,int x2,int y2,void *dest){
  unsigned int ofs=160*(y1-1)+2*(x1-1);
  unsigned int segm=FP_SEG(dest);
  unsigned int ofsm=FP_OFF(dest);
  int k=2*(x2-x1+1);
  for(int i=0;i<y2-y1+1;i++){
    asm{
      push es
      push ds
      mov  ax,0xB800
      mov  es,ax
      mov  ax,segm
      mov  ds,ax
      mov  di,ofs
      mov  si,ofsm
      mov  cx,k
      rep  movsb
      pop  ds
      pop  es
    }
    ofs+=160;
    ofsm+=k;
  }
}

Это я практически весь conio.h переделал(всё на асме), чтобы выйграть пару лишних килобайт. Кроме этого были ещё какие-то ошибки не в синаксисе. Давно это было.


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 13 
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan