Onko jossakin Intelin CPU:ssa 128-bit Floating Point Unit

UseinVääräNeliöjuri

Onko joissakin uusissa Intelin peruskäyttöön tarkoitetuissa prosessoreissa 128-bit FPU?
Muutamissa Intelin Xeon prosessoreissahan on ollut yli 80-bittisiä CPU:ita jo pitkään. Entäs AMD?

Ison kokonaisluvun neliöstä olisi mukava saada tarkka neliöjuuri aina ihan oikein ilman ohjelmallista toteutusta. Ennen aina kerrottiin varmasti oikein toimivat lukualueet eri operatioissa. Nyt tuota perustietoa on lähes mahdoton löytää Googlella.

16

201

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Ei se vaikuta muualle kuin suorituskykyyn se prosessorin tuki.

      Joka tapauksessa siinä olisi joku kirjasto kun tietotyyppien koot ovat melko hyvin standardoitu. Onko tuolle sitten tehty FPU kiihdytys niin vaikea sanoa.

      • Anonyymi

        voi Kilju-Peter-peseilijä cpu


    • weyeryery

      Taitaa nykyisin vakio olla 256-bit fpu.Sitten "AMD's Zen CPU includes a 512 bit floating point processor" "Zen on koodinimi AMD:n suorittimien mikroarkkitehtuurille, jota käytettiin ensimmäistä kertaa yhtiön Ryzen-tuotesarjan prosessoreissa helmikuusta 2017 alkaen"

      • Anonyymi

        Nuo 256 ja 512 bit ovat käskyjen ja sisäisten väylien yms leveyksiä. Liukulukujen tarkkuus on kuitenkin vain se ikivanha vaatimaton 80 bit. Ihan kuten yli 30 vuotta sitten.

        Nyt kyse oli kyllä varmasti 128-bittisistä (quadruple precision, binary128) floating point luvuissta. Noita käsitteleviä FPU:ita oli joskus "oikeissa" tietokoneissa.

        Jostakin syytä en nyt löydä yhtään Intelin (ei edes Xeon) tai AMD prosessoria, jossa oli 128-bittisiä floating point lukuja laskeva FPU. Uudet prosessorit kyllä laskevat 80-bittisiä lukuja toinen toistaan nopeamin kaikkia mahdollisia kikkoja ja rinnakkaisuuksia hyödyntäen. Sama juttu tietsti myös kokonaislukujen kanssa. Nopeutta on tullut mielettömästi lisää.

        Ei ole tietystikään mikään ongelma lisätä tarvittaessa liukulujen tarkkuutta mielivaltaiseksi ihan vaan ohjelmallisilla ratkaisuilla, sillä liukuluvut muodostuvat kokonaisluvuista. Sinne tänne on on tietysti lisätty jotain HW-tukea ja uusia käskyjä.. Viisaat kokonaisuuden optimoijat varmasti tietävät mitä tekevät. Aikaa ja kilpailua on ainakin ollut riittävästi tehdä kaikki oikeasti tarpeelliset muutokset ja parannukset HW-tasolla.


      • Anonyymi
        Anonyymi kirjoitti:

        Nuo 256 ja 512 bit ovat käskyjen ja sisäisten väylien yms leveyksiä. Liukulukujen tarkkuus on kuitenkin vain se ikivanha vaatimaton 80 bit. Ihan kuten yli 30 vuotta sitten.

        Nyt kyse oli kyllä varmasti 128-bittisistä (quadruple precision, binary128) floating point luvuissta. Noita käsitteleviä FPU:ita oli joskus "oikeissa" tietokoneissa.

        Jostakin syytä en nyt löydä yhtään Intelin (ei edes Xeon) tai AMD prosessoria, jossa oli 128-bittisiä floating point lukuja laskeva FPU. Uudet prosessorit kyllä laskevat 80-bittisiä lukuja toinen toistaan nopeamin kaikkia mahdollisia kikkoja ja rinnakkaisuuksia hyödyntäen. Sama juttu tietsti myös kokonaislukujen kanssa. Nopeutta on tullut mielettömästi lisää.

        Ei ole tietystikään mikään ongelma lisätä tarvittaessa liukulujen tarkkuutta mielivaltaiseksi ihan vaan ohjelmallisilla ratkaisuilla, sillä liukuluvut muodostuvat kokonaisluvuista. Sinne tänne on on tietysti lisätty jotain HW-tukea ja uusia käskyjä.. Viisaat kokonaisuuden optimoijat varmasti tietävät mitä tekevät. Aikaa ja kilpailua on ainakin ollut riittävästi tehdä kaikki oikeasti tarpeelliset muutokset ja parannukset HW-tasolla.

        FPU toimii mikrokoodilla ja sitä koodia lienee paljon. Lähes samantasoista mikrokoodia syntyy nykyisin myös peruskäskyjen dekoodauksen yhteydessä ja monet käskyt saadaan suoritettua yhden kellojakson aikana. Kaikki toimii liukuhihnamaisesti. Suorituskykyä ja tarkkuutta voidaan lisätä älykkäillä algoritmeilla ja laskujärjestyksen optimoinnilla. Ei kannata tehdä mitään turhaa eikä laskea mitään liian tarkasti kellojaksoja tuhlaten. Tarkkuutta on sitten helppo lisätä, kun on päästy lähelle jotain mielenkiintoista nollakohtaa tms.


      • Anonyymi
        Anonyymi kirjoitti:

        FPU toimii mikrokoodilla ja sitä koodia lienee paljon. Lähes samantasoista mikrokoodia syntyy nykyisin myös peruskäskyjen dekoodauksen yhteydessä ja monet käskyt saadaan suoritettua yhden kellojakson aikana. Kaikki toimii liukuhihnamaisesti. Suorituskykyä ja tarkkuutta voidaan lisätä älykkäillä algoritmeilla ja laskujärjestyksen optimoinnilla. Ei kannata tehdä mitään turhaa eikä laskea mitään liian tarkasti kellojaksoja tuhlaten. Tarkkuutta on sitten helppo lisätä, kun on päästy lähelle jotain mielenkiintoista nollakohtaa tms.

        Voi olla, että kaikki raaka laskenta on saatu rinnakkaiseksi ja liukuhihnamaiseksi ja riittävän nopeaksi, eikä se ole enää mikään pullonkaula. Aika kuluu saatujen lukujen hitaaseen käsittelyyn yksitellen ja siirtelyyn päämuistiin ja kovalevylle ja siten taas takaisin uuteen laskentaan.


      • Anonyymi
        Anonyymi kirjoitti:

        Voi olla, että kaikki raaka laskenta on saatu rinnakkaiseksi ja liukuhihnamaiseksi ja riittävän nopeaksi, eikä se ole enää mikään pullonkaula. Aika kuluu saatujen lukujen hitaaseen käsittelyyn yksitellen ja siirtelyyn päämuistiin ja kovalevylle ja siten taas takaisin uuteen laskentaan.

        Näin on. Erittäin suuri osa energiasta, mitä keskusyksikkö käyttää, menee vain tiedon siirtelyyn paikasta toiseen.

        Vain pieni osa menee itse laskemiseen.


    • Anonyymi

      Eikö vieläkään löydy yhtään kaupallista prosessoria, jossa olisi 128-bit Floating Point Unit?

      Jotain uutta laitteistotukea olisi myös hyvä saada 128 bittisten kokonaislukujen laskuun. Nyt kaikki hidastuu aina kun mennään yli 64:n (tai 63:n) bitin.

      • Anonyymi

        ..........

        hohhoijjaa...

        Floating Point = liukuluku, eli DESIMAALILIUKU, jolla ei ole mitään tekemistä KOKONAISLUVUN KANSSA!!!!!!!!!!!!!

        Mitä helvaattaa ylipäätään teet mitään millään 128-bittisellä kun et edes osaa käsitteitä!?!?!?

        Ja kun et osaa, niin et silloin myöskään osaa ohjelmoida, niin kyseiset ominaisuudet ovat SINULLE aivan täysin TARPEETTOMIA!!!!!!

        Niin, ja jos vauhtia, eli nopeutta haluaa, niin sitten käyttää näytönohjainkortteja tähän tarkoitukseen. Esim. Mandelbrotia voi laskea näytönohjaimella, joka kiihdyttää laskennan ihan kiitettäviin tuloksiin.

        Siitä vaan kouluun opiskelemaan ensin KÄSITTEET selviksi, ja sitten OHJELMOINTIA!!!


      • Anonyymi
        Anonyymi kirjoitti:

        ..........

        hohhoijjaa...

        Floating Point = liukuluku, eli DESIMAALILIUKU, jolla ei ole mitään tekemistä KOKONAISLUVUN KANSSA!!!!!!!!!!!!!

        Mitä helvaattaa ylipäätään teet mitään millään 128-bittisellä kun et edes osaa käsitteitä!?!?!?

        Ja kun et osaa, niin et silloin myöskään osaa ohjelmoida, niin kyseiset ominaisuudet ovat SINULLE aivan täysin TARPEETTOMIA!!!!!!

        Niin, ja jos vauhtia, eli nopeutta haluaa, niin sitten käyttää näytönohjainkortteja tähän tarkoitukseen. Esim. Mandelbrotia voi laskea näytönohjaimella, joka kiihdyttää laskennan ihan kiitettäviin tuloksiin.

        Siitä vaan kouluun opiskelemaan ensin KÄSITTEET selviksi, ja sitten OHJELMOINTIA!!!

        Mitä taas höpötät. Olet lukutaidoton idiootti, etkä edes ymmärrä lukemaasi. Opettele perusasiat ja lopeta ikuinen sunsoittosi. Kirjoittamaan et ikinä tule oppimaan.

        Tiedätkö edes monestako konaisluvusta jokainen liukuluku muodostuu.

        Et ole selvästi ikinä opetellut matematikkaa tai fysiikkaa tai tehnyt yhtäkään ohjelmaa, jossa laskettaisiin jotain oikeasti isoilla luvuilla ja isoilla lukujoukoilla.

        Intel ja muut valmistajat tekevät erilaisia tehokkaita prosessoreita supertietokoneita varten, mutta niitä ei ole saatavissa tavallisiin pöytäkoneisiin. Ehkä liikaa ongelmia käyttöjärjestelmien, ohjelmointkielten ja kirjasto-ohjemien kanssa.


      • Anonyymi
        Anonyymi kirjoitti:

        Mitä taas höpötät. Olet lukutaidoton idiootti, etkä edes ymmärrä lukemaasi. Opettele perusasiat ja lopeta ikuinen sunsoittosi. Kirjoittamaan et ikinä tule oppimaan.

        Tiedätkö edes monestako konaisluvusta jokainen liukuluku muodostuu.

        Et ole selvästi ikinä opetellut matematikkaa tai fysiikkaa tai tehnyt yhtäkään ohjelmaa, jossa laskettaisiin jotain oikeasti isoilla luvuilla ja isoilla lukujoukoilla.

        Intel ja muut valmistajat tekevät erilaisia tehokkaita prosessoreita supertietokoneita varten, mutta niitä ei ole saatavissa tavallisiin pöytäkoneisiin. Ehkä liikaa ongelmia käyttöjärjestelmien, ohjelmointkielten ja kirjasto-ohjemien kanssa.

        Liukuluku ei ole kokonaisluku, niin näin ollen liukuluku ei voi muodostua yhdestäkään kokonaisluvusta.


      • Anonyymi
        Anonyymi kirjoitti:

        Mitä taas höpötät. Olet lukutaidoton idiootti, etkä edes ymmärrä lukemaasi. Opettele perusasiat ja lopeta ikuinen sunsoittosi. Kirjoittamaan et ikinä tule oppimaan.

        Tiedätkö edes monestako konaisluvusta jokainen liukuluku muodostuu.

        Et ole selvästi ikinä opetellut matematikkaa tai fysiikkaa tai tehnyt yhtäkään ohjelmaa, jossa laskettaisiin jotain oikeasti isoilla luvuilla ja isoilla lukujoukoilla.

        Intel ja muut valmistajat tekevät erilaisia tehokkaita prosessoreita supertietokoneita varten, mutta niitä ei ole saatavissa tavallisiin pöytäkoneisiin. Ehkä liikaa ongelmia käyttöjärjestelmien, ohjelmointkielten ja kirjasto-ohjemien kanssa.

        ..."Intel ja muut valmistajat tekevät erilaisia tehokkaita prosessoreita supertietokoneita varten"...

        Siinäpä sinulle laskentakortti PC-koneeseesi. Osta ja lyö kiinni, niin pääset harjoittamaan tieteellistä laskentaa:

        https://www.amd.com/en/products/server-accelerators/instinct-mi100


      • Anonyymi
        Anonyymi kirjoitti:

        Liukuluku ei ole kokonaisluku, niin näin ollen liukuluku ei voi muodostua yhdestäkään kokonaisluvusta.

        Kaikki laskenta tehdään aina kokonaisluvuilla tietokoneissa.

        Et ole edes viitsinyt selvitää mikä on líukuluku. Olet laiska oppimiskyvytön idiootti ja pelkkä suunsoittaja.

        Et varmasti myöskään tiedä, miten liukulukuyksikköä voi hyödyntää myös isojen kokonaislukujen laskuissa. Etkä tietysti viitsi selvittää liukulukuyksikön käskykantaa. Kielitaitosi ei riitä. Jatkatko vielä suunsoittoasi?


      • Anonyymi
        Anonyymi kirjoitti:

        Kaikki laskenta tehdään aina kokonaisluvuilla tietokoneissa.

        Et ole edes viitsinyt selvitää mikä on líukuluku. Olet laiska oppimiskyvytön idiootti ja pelkkä suunsoittaja.

        Et varmasti myöskään tiedä, miten liukulukuyksikköä voi hyödyntää myös isojen kokonaislukujen laskuissa. Etkä tietysti viitsi selvittää liukulukuyksikön käskykantaa. Kielitaitosi ei riitä. Jatkatko vielä suunsoittoasi?

        Väärin. Esim. minun piti aikanaan ostaa tietokoneeksi 486DX-33, koska vain siinä oli matematiikkaprosessori (FPU) liukulukujen laskentaan, joka oli ehdoton vaatimus AutoCad ohjelmalle, ja tätä (hardware) ominaisuutta ei voinut mitenkään kiertää. Tuolloin oli olemassa myös ajuri 486SX-25 tietokoneisiin joka emuloi aritmetriikkayksikköä, mutta se ei toiminut AutoCadin kanssa; joidenkin muiden kanssa kyllä.

        On totta että on tapauksia joissa liukulukuja muutetaan kokonaisluvuiksi laskennan nopeuttamiseksi, mutta se ei auta esim. tapauksessa 2/3, koska tästä jää jakojäännös, ja tämän laskutoimituksen muuttaminen laskettavaksi (muilla) kokonaisluvuilla siten tuottaisi niin paljon iteraatiota, että laskuoperaatio hidastuisi suunnattomasti, niin helpointa (ja nopeinta) on tottakai vääntää se erillisellä artimetriikkayksiköllä, koska sellainen kuitenkin on olemassa. Aikanaan luin paljon artikkeleita tästä, että laskutoimituksia suoritettaisiinkin kokonaisluvuilla, juusikin laskennan nopeuttamiseksi.

        FPU:lla voi tottakai laskea myös kokonaislukuja - eihän sitä mikään estä. Lyöt vain parametrit sisään ja sitten komennolla fwait() jää suoritus odottamaan että artimertiikkayksikkö on valmis ja palauttaa pointterin että mistä tulos on luettavissa.

        En ole koodannut assemblerilla n. 30 vuoteen, eli en todellakaan muista enää artimetriikkayksikön käskykantaa ulkomuistista, mutta sen muistan että parametroinnin ja laskentakäskyn antamisten jälkeen piti antaa komento fwait(), jolloin suoritus pysähtyy odottamaan artimetriikkayksiön tuloksen valmistumista. Näinkään ei kuitenkana ole pakko tehdä, sillä samassa ajassa voi toteuttaa myös muita toiminteita sovelluksessa, ja vasta sopivassa kohtaa antaa komento fwait(), niin tulos mitä todennäköisimmin on jo valmiina, ja onkin itse asiassa säästetty aikaa ja nopeutettu koko ohjelman suoritusta.

        Edelleen, tuossa aikanaan hankimassani emolevyssä oli myös erillinen paikka WEITEK -artimteriikkayksikölle, kuten myös jokin erikoinen jatkettu 32-bittinen ISA -väylä, joka oli tehty vain ja ainoastaan käytettäväksi kokonaan erillisen matemaattikkakortin kanssa, jota sitäkään en nyt tarkemmin muista, siis silloista tieteellistä laskentaa varten.


      • Anonyymi
        Anonyymi kirjoitti:

        Väärin. Esim. minun piti aikanaan ostaa tietokoneeksi 486DX-33, koska vain siinä oli matematiikkaprosessori (FPU) liukulukujen laskentaan, joka oli ehdoton vaatimus AutoCad ohjelmalle, ja tätä (hardware) ominaisuutta ei voinut mitenkään kiertää. Tuolloin oli olemassa myös ajuri 486SX-25 tietokoneisiin joka emuloi aritmetriikkayksikköä, mutta se ei toiminut AutoCadin kanssa; joidenkin muiden kanssa kyllä.

        On totta että on tapauksia joissa liukulukuja muutetaan kokonaisluvuiksi laskennan nopeuttamiseksi, mutta se ei auta esim. tapauksessa 2/3, koska tästä jää jakojäännös, ja tämän laskutoimituksen muuttaminen laskettavaksi (muilla) kokonaisluvuilla siten tuottaisi niin paljon iteraatiota, että laskuoperaatio hidastuisi suunnattomasti, niin helpointa (ja nopeinta) on tottakai vääntää se erillisellä artimetriikkayksiköllä, koska sellainen kuitenkin on olemassa. Aikanaan luin paljon artikkeleita tästä, että laskutoimituksia suoritettaisiinkin kokonaisluvuilla, juusikin laskennan nopeuttamiseksi.

        FPU:lla voi tottakai laskea myös kokonaislukuja - eihän sitä mikään estä. Lyöt vain parametrit sisään ja sitten komennolla fwait() jää suoritus odottamaan että artimertiikkayksikkö on valmis ja palauttaa pointterin että mistä tulos on luettavissa.

        En ole koodannut assemblerilla n. 30 vuoteen, eli en todellakaan muista enää artimetriikkayksikön käskykantaa ulkomuistista, mutta sen muistan että parametroinnin ja laskentakäskyn antamisten jälkeen piti antaa komento fwait(), jolloin suoritus pysähtyy odottamaan artimetriikkayksiön tuloksen valmistumista. Näinkään ei kuitenkana ole pakko tehdä, sillä samassa ajassa voi toteuttaa myös muita toiminteita sovelluksessa, ja vasta sopivassa kohtaa antaa komento fwait(), niin tulos mitä todennäköisimmin on jo valmiina, ja onkin itse asiassa säästetty aikaa ja nopeutettu koko ohjelman suoritusta.

        Edelleen, tuossa aikanaan hankimassani emolevyssä oli myös erillinen paikka WEITEK -artimteriikkayksikölle, kuten myös jokin erikoinen jatkettu 32-bittinen ISA -väylä, joka oli tehty vain ja ainoastaan käytettäväksi kokonaan erillisen matemaattikkakortin kanssa, jota sitäkään en nyt tarkemmin muista, siis silloista tieteellistä laskentaa varten.

        Usko jo olevasi oppimiskyvytyn lukutaidoton iodiootti ja patologinen valehtelija. Kirjoitat lahjakkaasti asioiden vierestä. Et välttämättä edes tajua tuon olevan valehtelemnisen kaikkein pahin muoto.

        Sillä mitä sinä luulet ja kuvittelet ja olet kokenut, ei ole mitään merkitystä.

        Opettele laskemaan ensin kynällä ja paperilla. Opit aika nopeasti, että silloinkin laskut suoritetaan oikeastaan vain kokonaisluvuilla. Pilkku tai piste voidaan lisätä jälkeen päin sopivaan paikkaan.

        Ei tietokoneissa ole pilkkuja tai pisteitä. Ne lisätään tarvittaesa vasta tulostusvaiheessa. Laskuissa käytetään aina kokonaislukuja. Et selvästikään ymmärrä, mikä on liukuluku ja miksi ja miten niitä käytetään. Jos olisit opetellut edes digitaalitekniikan perusteet, ymmärtäisit tietokoneista ja laskennasta jotain.


      • Anonyymi
        Anonyymi kirjoitti:

        Usko jo olevasi oppimiskyvytyn lukutaidoton iodiootti ja patologinen valehtelija. Kirjoitat lahjakkaasti asioiden vierestä. Et välttämättä edes tajua tuon olevan valehtelemnisen kaikkein pahin muoto.

        Sillä mitä sinä luulet ja kuvittelet ja olet kokenut, ei ole mitään merkitystä.

        Opettele laskemaan ensin kynällä ja paperilla. Opit aika nopeasti, että silloinkin laskut suoritetaan oikeastaan vain kokonaisluvuilla. Pilkku tai piste voidaan lisätä jälkeen päin sopivaan paikkaan.

        Ei tietokoneissa ole pilkkuja tai pisteitä. Ne lisätään tarvittaesa vasta tulostusvaiheessa. Laskuissa käytetään aina kokonaislukuja. Et selvästikään ymmärrä, mikä on liukuluku ja miksi ja miten niitä käytetään. Jos olisit opetellut edes digitaalitekniikan perusteet, ymmärtäisit tietokoneista ja laskennasta jotain.

        Oh, en ole tiennytkään että matematiikassa ..."pilkku tai piste voidaan laskutoimituksen jälkeen lisätä sopivaan paikkaan"..., vaikka toki kirjanpidossa ja oikeustieteessä kaikki on mahdollista...

        Laitappa tähän sitten lyhyt C-kielinen ohjelma jolla osoitat että float -tyyppinen muuttuja on täysin tarpeeton, koska .."pilkku tai piste voidaan laskutoimituksen jälkeen lisätä sopivaan paikkaan"...

        Ja siis koska ..."pilkku tai piste voidaan laskutoimituksen jälkeen lisätä sopivaan paikkaan"..., ja ..." lisätään tarvittaessa vasta tulostusvaiheessa"..., niin mihin helvaattaan sinä mitään 128-bittistä Floating Point Unitia tarvitset, kuten tätä tietokoneissa yleensäkään, koska siis ..."pilkku tai piste voidaan laskutoimituksen jälkeen lisätä sopivaan paikkaan, ja lisätään tarvittaessa vasta tulostusvaiheessa"...

        Ja laita samalla tähän C-kielinen ohjelma, joka kysyy ympyrän ympärysmitan, ja laskee siitä tämän alueen sisäpinta-alan, käyttäen vain kokonaislukuja, sillä ..."pilkku tai piste voidaan laskutoimituksen jälkeen lisätä sopivaan paikkaan, ja lisätään tarvittaessa vasta tulostusvaiheessa"...

        Haluaisin niin kovasti nähdä tällaisen ohjelman, sillä tähän asti en ole tiennyt tällaisen olevan mahdollista lainkaan, sillä tähän asti itse olen joutunut käyttämään tällaisessa float -tyyppisiä muuttujia, mutta sinun mukaasi kaikki tämä tällainen on tarpeetonta koska pelkkä integer -tyyppinen riittää, koska ..."pilkku tai piste voidaan laskutoimituksen jälkeen lisätä sopivaan paikkaan, ja lisätään tarvittaessa vasta tulostusvaiheessa"...

        Ja jos käyttäjä antaa ym. esimerkissä ympärysmitaksi vaikka esim. 3459, tai 46516, tai 84654164, niin mikä on se sopiva paikka johon desmiaalierotin laskutoimituksen jälkeen laitetaan näiden arvojen tapauksessa, vai onko näissä kyseessä sittenkin absoluuttinen kokonaisluku, eikä eikä niitä tule käsitellä desimaali- tai liukulukuna? Tai jos hepotetaan asiaa, ja käyttäjä antaakin mitaksi vaikka 00087446, niin mikä tässä tapauksessa on se oikea paikka johon desimaalierotin lisätään laskutoimituksen jälkeen, kun käyttäjä on antanut mitaksi liukuluvun?

        Ja kuinka tehtävä ratkaistaisiin samoilla annetuilla arvoilla ilman tietokonetta, kynällä ja paperilla, laittamalla desimaalierotin laskutoimtuksen jälkeen oikeaan paikkaan?

        Taskulaskimellakin kun tällaista laskee, niin ei taskulaskimessa PIIn arvo ole kokonaisluku, vaan desimaaliluku.

        FPU itsessään sisäisesti toki toimii tavalla, jossa "käsittelee" desimaalilukua "kokonaislukuna", matematiikan sääntöjen vastaisesti, eli esim, siis vaikka PIIn arvo, "3,1415" käsitelläänkin "kokonaislukuna" muodossa "00031415", mikä paperilla tai taskulaskimella laskettaessa vastaakin kokonaislukua 31415.

        Näin ollen, paperilla ja/tai taskulaskimella laskettaessa desimaalilukuja, ei tällaisia liukulukuja, eli näiden "kokonaislukuja" voi käyttää tällaista kokonaislukuihin perustuvaa laskentamenetelmää koska etunollat pyyhkiytyvät pois, niin tämän jälkeen ihminen ei enää tiedä että mihin se desimaalierotin tulisi itse asiassa laittaa...

        Näin ollen, ei ole olemassa mitään desimaalierottimelle ..."sopivaan paikkaan, ja lisätään tarvittaessa vasta tulostusvaiheessa"..., koska tietokoneen toiminta on absoluuttista, niin desimaalierotin lisätään tässä esimerkin mukaisessa tapauksessa täsmälleen ABSOLUUTTISEN oikeaan paikkaan, eli keskelle tämän "kokonaisluvun" mukaista arvoa, tai oikeammin KETJUA. Ja keskelle juuri syystä koska tietokoneissa numeeristen muuttujien arvo on rajallinen, eli rajoittuu tiettyyn määrään bittejä, mistä syystä varmaan olisit haluamssa 128-bittistä FPUta, niin, näin ollen, FPU:n suorittaman "kokonaislukuihin" perustuvan laskutoimituksen jälkeen desimaalierotin lisätään täsmälleen saadun lopputuloksen KESKELLE.

        Jos FPUn suorittaman "kokonaislukujen" laskutoimituksen lopputulos olisi vaikka "00634684", niin tässä tapauksessä käyttäjälle tulostettava arvo olisi "63.4684", edellyttäen tietysti että on käytettu oikeantyyppisiä muuttujia, että esitystavaksi on valittu 4 desimaalia, kun yleensä tyydytään vain kahteen, jossa tapauksessa käyttäjälle tulostettava lopputulos pyöristyisi arvoon "63.47".

        Kynällä ja paperilla suoritettavat laskutoimitukset eivät todellakaan vastaa sitä suoritustapaa jolla FPU prosessoi laskentaa, eli siis kyseessä ei ole vertailukelpoinen asia.

        Matematiikassa ja fysiikassa riittää että osaat ja ymmärrät KAAVAN, että myös SOVELTAA sitä, myös vääntääksesi sen tietokoneohjelmaksi, tietokoneen laskettavaksi; kaavan muuttujien arvot ovat vain tavallisia numeroita, jotka paikalleen laitettuna kaavaan niille kuuluville paikoille määräävät tavan jolla se ratkaistaan, eli onnistuuko suoraan vai pitääkö soveltaa.

        En nyt heti ymmärrä että mihin 128-bittistä FPUta tarvitaan, sillä kyllähän mm. AutoCAD laskee 8 desimaalin tarkkudella, vaikka pääsääntöisesti riittää kaksi... Aikamoista hienomekaniikkaa siis täytyy olla jos desimaaleja tarvitaan enemmän...


    Ketjusta on poistettu 1 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Laitetaas nyt kirjaimet tänne

      kuka kaipaa ja ketä ?
      Ikävä
      151
      10934
    2. Pieni häivähdys sinusta

      Olet niin totinen
      Ikävä
      52
      5220
    3. Taas ryssittiin oikein kunnolla

      r….ä hyökkäsi Viroon sikaili taas ajattelematta yhtään mitään https://www.is.fi/ulkomaat/art-2000011347289.html
      NATO
      45
      2433
    4. Missä olet ollut tänään kaivattuni?

      Ikävä sai yliotteen ❤️ En nähnyt sua tänään söpö mies
      Ikävä
      30
      2133
    5. Vanha Suola janottaa Iivarilla

      Vanha suola janottaa Siikalatvan kunnanjohtaja Pekka Iivaria. Mies kiertää Kemijärven kyläjuhlia ja kulttuuritapahtumia
      Kemijärvi
      13
      1701
    6. Valtimon Haapajärvellä paatti mäni nurin

      Ikävä onnettomuus Haapajärvellä. Vene hörpppi vettä matkalla saaren. Veneessä ol 5 henkilöä, kolme uiskenteli rantaan,
      Nurmes
      42
      1544
    7. Tiedän kuka sinä noista olet

      Lucky for you, olen rakastunut sinuun joten en reagoi negatiivisesti. Voit kertoa kavereillesi että kyl vaan, rakkautta
      Ikävä
      30
      1241
    8. Känniläiset veneessä?

      Siinä taas päästiin näyttämään miten tyhmiä känniläiset on. Heh heh "Kaikki osalliset ovat täysi-ikäisiä ja alkoholin v
      Nurmes
      35
      1166
    9. Daniel Nummelan linjapuhe 2025

      Kansanlähetyksen toiminnanjohtajan Daniel Nummelan linjapuhe tänään. Rehellistä analyysiä mm. evlut kirkosta ja piispo
      Luterilaisuus
      92
      935
    10. TÄSTÄ TAITAA TULLA SUOMEN HISTORIAN SUURIN USKONNONVAPAUDEN OIKEUDENKÄYNTI.

      Sinun täytyy hyväksyä se että jos sinä vetoat uskonnonvapauteen, silloin sinun tulee antaa myös muille vastaava vapaus o
      Hindulaisuus
      317
      892
    Aihe