Эмуляция умножения / сложения с плавающей запятой IBM в VBA

Я пытаюсь эмулировать (уже не существующий) генератор отчетов мэйнфрейма в среде Access 2003 или Access 2010. Данные, которые он генерирует, должны точно соответствовать бумажным отчетам начала 70-х годов. К сожалению, данные самых ранних лет обрабатывались на оборудовании, которое использовало представление с плавающей запятой IBM вместо IEEE. С помощью Google я нашел библиотеку функций VBA, которые преобразуют число с плавающей запятой из десятичного в 32-битный двоичный формат IEEE 754. Мне пришлось изменить библиотеку, чтобы она принимала 32-битные или 64-битные числа с плавающей запятой, поэтому у меня есть скромные знания о форматах с плавающей запятой, однако у меня возникают проблемы с преобразованием из IEEE в двоичный формат IBM, а также проблемы с умножением и добавлением либо номера IBM, либо IEEE.

Я не использовал другие библиотеки для выполнения этого преобразования и арифметических операций в VBA - есть ли более простой способ сделать это, или существующая библиотека, которую я не нахожу ? В противном случае ясное и прямое объяснение соответствующих алгоритмов?

Заранее спасибо. т.е. кто-то где-то должен хранить указатель на объект, отличный от const , и этот кто-то отвечает за освобождение.

Теперь рассмотрим библиотеку, выделяющую и инициализирующую объекты, которые не могут быть изменены из пользовательского пространства код, поэтому вызовы функций всегда возвращают указатели, соответствующие const .

Очевидно, что библиотека является владельцем объекта и должна сохранять указатель, отличный от const , что несколько глупо поскольку пользователь уже предоставляет совершенно допустимую, но const копию указателя при каждом вызове библиотеки.

Чтобы освободить такой объект, библиотека должна отбросить квалификатор const ; насколько я могу судить, следующее

void dealloc_foo(const struct foo *foo)
{
    free((void *)foo);
}

верно для C; он был бы недействителен только в том случае, если параметр foo был дополнительно квалифицирован для restrict . Проблема в теге

. Мне нужен тег , чтобы перекрыть несколько тегов
и , потому что ...

У меня проблемы с проверкой этого кода с помощью валидатора W3. Проблема связана с тегом . Мне нужен тег , чтобы перекрыть несколько тегов

и , потому что у меня много разных полей ввода и т. Д., Но я также с использованием Form2 и Form3 с полями ввода и т. д., поэтому мне нужно использовать перед Form2. Но это вызывает у меня проблемы при проверке, потому что он перекрывает теги
и . Что я могу сделать, чтобы проверка работала?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="sv" xml:lang="sv" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
  <title>Title</title>
  <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" />
</head>
<body>
<div id="wrapper">

 <div id="headerwrapper">
  <div class="header alignleft">
   <a href="index.html">Home</a>
  </div>
  <div class="header alignright">
   <div id="searchfield">
   Search
   </div>
  </div>

  <div id="menu">
  Menu
  </div>
 </div>
 <div class="clear"></div>

 <div class="content">
  <div class="box alignleft">

   <div class="boxtop"></div>
   <div class="boxmiddle">

    <form action="links.php" method="post"><input type="hidden" name="edit_page_check" value="yes" />

    <p>
     <span id="page_leftbox">Text</span>
    </p>
   </div>

   <div class="boxbottom"></div>

  </div>
  <div class="column580 alignright">

   <div class="header580">
    <h2>Topic</h2><span class="headerdesc">Text</span>
   </div>
   <p>

    <span id="page_info">Info</span>

   </p>

   </form>
   <br/>
   <div id="addlinkform" style="display: none;">
Form2
   </div>
   <div id="linkform" style="display: none;">
Form3
   </div>
  </div>
 </div>
 <div class="clear"></div>
 <div class="divider800"></div>
 <div id="footer">
Footer text
 </div>
</div>
</body>
</html>
1
задан Alohci 22 October 2010 в 20:10
поделиться