🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #7528

Re: IEEE 754 standaard

#7528
From: Nicolas Barbier
Date: Wed, 28 Aug 2002 09:34
45 lines
3057 bytes
TRAX wrote:

> een vraagje over een standaardje voor floating point voorstellingen ivm de
> interne opslag in het geheugen, iedereen zal dat wel gezien hebben
> indertijd zoals ik nu, de vraag is: wie weet er nog wat van en wie wil mij
> helpen hoe ik een short of long ieee 754 formaat moet omzetten in decimaal
> (of binair, of hexa) dat weet ik wel maar van een decimaal getal naar die
> standaard omzetten is wat anders.
> ik begin met het decimale getal om te zetten naar binair, dan moet ik de
> meest linkse 1 zoeken
> en dan? het is natuurlijk te doen om de macht van twee die verkregen wordt
> als ge het getal da ge vindt bij 127 optelt. maar hoe vind ik dat getal?
> is dat beginnende van de meest linkse 1 8 bits tellen en dit omzetten naar
> decimaal en dat is dan het getal dat bij 127 moet worden opgeteld? vanaf
> hier zit ik dus vast en in mijn nota's staat het nu ook weer nie echt goed
> uitgelegd.

Dit algorithme werkt enkel voor getallen waar enkel cijfers voor de komma 
staan (en niet bij de getallen waarbij als exponentveld 0 wordt gebruikt):

- Zet string (bestaande uit ascii codes van cijfers ofzo) om naar een 
integer voorstelling van genoeg bits.
- Zoek de meest linkse 1 (bv door herhaald schuiven naar rechts tot je nul 
hebt ofzo... gooi hierbij natuurlijk je oorspronkelijke getal niet weg).
- Gooi die 1 weg en zet hetgeen erachter komt in je mantisse (aangevuld met 
0'en).
- Geef als exponent (127 + n), waarbij n het aantal bits achter die meest 
linkse 1 is.

Voor getallen met ook cijfers achter de komma is het wat moeilijker... 
(moet dat ook? ;-).

Hmm ik merk net dat je vraag eigenlijk gewoon was wat de exponent 
betekent... het is dus de exponent :-). Ze is voorgesteld in 
binary-offset-formaat met als bias 127. Je getal wordt berekend met:

S^(-1) x 1.M x 2^(E - 127)

waarbij S je sign-bit (0 positief, 1 negatief), M je mantisse-veld (1.M 
betekent: "1" komma "M"), E je exponent-veld.

-- 
Nicolas Barbier
MY_PROFILE:   http://users.pandora.be/HATE/profiles/itsme/
HOW_TO_QUOTE: http://www.houghi.org/quote/ /* Dutch */
Technical Details
Message-ID: <3d6c98ed$0$30457$afc38c87@sisyphus.news.be.easynet.net>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-04!supernews.com!nntp.cs.ubc.ca!skynet.be!skynet.be!feed1.news.be.easynet.net!sisyphus.news.be.easynet.net!not-for-mail
References: <BpZa9.91858$8o4.12443@afrodite.telenet-ops.be>

Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit
X-Google-Thread: fcea4,30e8c154ed574c7c
X-Google-Attributes: gidfcea4,public
X-Google-ArrivalTime: 2002-08-28 02:58:17 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-04!supernews.com!nntp.cs.ubc.ca!skynet.be!skynet.be!feed1.news.be.easynet.net!sisyphus.news.be.easynet.net!not-for-mail
Message-ID: <3d6c98ed$0$30457$afc38c87@sisyphus.news.be.easynet.net>
From: Nicolas Barbier <reply@in.group.invalid>
Subject: Re: IEEE 754 standaard
Newsgroups: be.comp.programming
Date: Wed, 28 Aug 2002 11:34:41 +0200
References: <BpZa9.91858$8o4.12443@afrodite.telenet-ops.be>
User-Agent: KNode/0.6.1
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7Bit
Lines: 45
Organization: [ posted via Easynet Belgium ]
NNTP-Posting-Host: 213.193.183.21
X-Trace: 1030527213  30457 213.193.183.21
X-Complaints-To: abuse@be.easynet.net