nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 16:43



Reply to topic  [ 20 posts ]  Go to page Previous  1, 2
Электроника МС2721 
Author Message
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Получил ещё один экземпляр с ПОЛНЫМ пакетом документации :mrgreen:

И там есть руководство программиста для библиотеки с плавающей точкой ;)

Надо её чтоли отсканировать и сдать вот сюда для комплекту:
http://retropc.org/Elektronika_MS_2721_s_99.html

_________________
:dj: https://mastodon.social/@Shaos


23 Mar 2018 08:13
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Вобщем там эта библиотека работает с однобайтовыми числами (старший бит является битом знака), двухбайтовыми числами (старший бит - знак, а предпоследний бит по старшинству - бит переполнения, причём байты в памяти располагаются в порядке "big endian") и трёхбайтовыми числами с плавающей точкой, составленными из байта экспоненты и 2-байтовой мантиссы (как описано до этого) - интересно сами писали или цельнотянуто откуда то?...

_________________
:dj: https://mastodon.social/@Shaos


25 Mar 2018 23:14
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
3-байтовые числа с плавающей точкой в памяти располагаются так:
1й байт - экспонента: 1 бит знак, 7 битов - само число (представляет числа от -127 до +127);
2й байт - старший байт мантиссы: 1 бит знак, 1 бит переполнения, оставшиеся 6 битов - старшие биты мантиссы;
3й байт - младший байт мантиссы: 8 битов, которые с 6 битами из предыдущего байта формируют 14 бит мантиссы (т.е. 16383 это самое большое число, среди чисел, которые можно отобразить без потери точности подряд).
Мантисса представляет собой биты после десятичной точки, т.е. 00 20 00 означает 0.5 (соответственно 01 20 00 это 1, а 00 00 00 это 0)

P.S. Получается, что самое маленькое число (по абсолютному значению и неравное нулю), которое можно отобразить в этой системе, это FF 00 01 = (1/16384)*2^(-127) = 3.587324068671532e-43, а самое большое - 7F 2F FF = 16383/16384*2^127 = 1.7013079886675216e+38 (правда документация пишет про 0.5867e-38 и 0.1704e+39 соответственно - второе похоже, а вот первое - не очень)

P.P.S. Возможно в документации речь идёт о нормализованном представлении, когда старший бит мантиссы всегда 1 - тогда самым маленьким числом будет FF 20 00 = 0.5*2^(-127) = 2.938735877055719e-39 (что примерно в 2 раза меньше того, что задокументировано)

_________________
:dj: https://mastodon.social/@Shaos


26 Mar 2018 04:38
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Shaos wrote:
Получил ещё один экземпляр с ПОЛНЫМ пакетом документации :mrgreen:

И там есть руководство программиста для библиотеки с плавающей точкой ;)

Надо её чтоли отсканировать и сдать вот сюда для комплекту:
http://retropc.org/Elektronika_MS_2721_s_99.html

Вот обложка и одна из страниц руководства:


Attachments:
floating3a.jpg
floating3a.jpg [ 125.16 KiB | Viewed 3988 times ]
floating3b.jpg
floating3b.jpg [ 161.62 KiB | Viewed 3988 times ]

_________________
:dj: https://mastodon.social/@Shaos
13 Mar 2021 01:37
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Я смотрю скан книжки про плавающую точку уже есть у них:

http://retropc.org/Elektronika_MS_2721_s_99.html

Скачал дамп там, а то мои коробушки лежат в хранилище в Санта-Кларе...

_________________
:dj: https://mastodon.social/@Shaos


13 Mar 2021 02:24
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 20 posts ]  Go to page Previous  1, 2

Who is online

Users browsing this forum: No registered users and 9 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.