Permalänk

Beräkna med datorn!

Satt och räknade lite på potenstal (läser el). När jag tröttnade på det lekte jag lite med tvåpotenser för att fördriva tiden. Jag kom i underfund att min miniräknare inte klarar av att beräkna tal där exponenten är över 332, innan det stog mathematical error.

Tanken slog mig direkt, så jag satt mig ner vid datorn och började knappa på tangenterna. Jag kom upp till ca. 140K som exponent, innan det sa stop. Vid ungefär 100K började jag uppleva korta fördröjningar i svarstiden. Jag trode dock att det skulle vara oändligt. Svaret kan jag inte säga vad det blev, men kan tänka mig att det blev minst en kvadriljon. Så nu till min fråga: hur mycket kan man beräkna egentligen med datorn?...var går gränsen liksom? Vad är det som bestämmer hur stora tal man kan räkna på? Hur ser den matematik professorn ut egentligen? Det var kanske lite för mycket på en gång. Men om man vill att datorn ska kunna räkna på större tal, vad måste man ändra på då? (Jag tror inte det hjälper nåt att överklocka i det fallet, snarare underklocka )

Någon som vill experimentera lite?
Här är en tabell på några exponenter som ni kan använda er av, alltså det tal man upphöjer 2 med:

4
8
16
32
64
128
256
512
1024
2048
4096
8192
16384
32768
65536
131072
262144

Använd bara 2 som bas. Ni kommer nog inte behöva högre exponenter än så. Kan ni multiplicera flera gånger så har ni en superdator utan att ni ens vet om det.

Visa signatur

"Good teaching is one-fourth preparation and three-fourths pure theatre."—Gail Godwin
Sweclockers BB kod
0101001101000111

Permalänk
Avstängd

Försök hitta en programerare så gör ni ett nytt dator test program för o se hur snabbt man räkna rut det? ;p

Visa signatur

AMD Athlon 64 3200+ Winchster @ 2500mhz, org 2000mhz. En 512MB Kingtson HyperX minne 250mhz 3,3,3,9, org 200mhz 2,2,2,5. Ratio 1-1. MSI K8N Neo2 Platinum 54G. Radeon 9600SE. Maxtor 40GB och 120GB Wstern Digital.

Permalänk
Medlem

datorn skiter i hur stora talen är. Du kan ju skriva in en gogolplex och multiplicera den med sig själv utan problem. Svaret kommer direkt. Problemet för datorn är ju hur många iterationer som krävs. Gäller det exponentberäkning på 2 kan du ju skriva ett program som innehåller algoritmer som underlättar arbetet för datorn. Det som du talar om är ju inga problem om tid finns. Körde du i miniräknaren på datorn eller?
Gör man ett program manuellt så är det bara att vänta på svaret.

Sen hjälper det självklart att överklocka. En snabbare prolle = snabbare iteration = snabbare svar

Gör du ett program själv på 2 exponenter så gör du det givetvis med strängar. Då är det bara att summera ner föregående sträng i den nya. Det kommer inte ta stopp förrän du har en miljon worddoument fyllda med siffror i med fontstorlek 0.5 punkter ))

Visa signatur

Dator1: Core i7 9700k | RTX 2080 | Asus z390-f | 16gb DDR4 3200 | 2 x 500gb ssd | RM 750x
Dator2: Core i7 6700k | MSI GTX1080 8gb | 2x8gb DDR4 2100mhz | 850 EVO 500gb | Corsair CS550W | Fractal D R3 | 3tb samsung lagring
Dator3: Core i5 4690k | ASUS GTX1070 8gb | 2x8gb DDR3 2400mhz | 850 EVO 500gb | Corsair CS550W | mini itx node 304

Permalänk
Citat:

Ursprungligen inskrivet av meandra
datorn skiter i hur stora talen är. Du kan ju skriva in en gogolplex och multiplicera den med sig själv utan problem. Svaret kommer direkt. Problemet för datorn är ju hur många iterationer som krävs. Gäller det exponentberäkning på 2 kan du ju skriva ett program som innehåller algoritmer som underlättar arbetet för datorn. Det som du talar om är ju inga problem om tid finns. Körde du i miniräknaren på datorn eller?
Gör man ett program manuellt så är det bara att vänta på svaret.

Sen hjälper det självklart att överklocka. En snabbare prolle = snabbare iteration = snabbare svar

Gör du ett program själv på 2 exponenter så gör du det givetvis med strängar. Då är det bara att summera ner föregående sträng i den nya. Det kommer inte ta stopp förrän du har en miljon worddoument fyllda med siffror i med fontstorlek 0.5 punkter ))

Det är möjligt att det hjälper att överklocka. Men jag tänkte att om man överklockar för mycket så kommer den göra missar i beräkningen, så att den inte hinner med. För det är väl i princip det som händer när man överklockar för mycket, och datorn börjar bete sig konstigt. För annars om det vore så enkelt, så skulle man ju kunna överklocka hur mycket som helst. Fast det kanske man kan också, i teorin?... värmeutvecklingen är ju största problemet vid höga frekvenser.

Visa signatur

"Good teaching is one-fourth preparation and three-fourths pure theatre."—Gail Godwin
Sweclockers BB kod
0101001101000111

Permalänk
Avstängd

Med en upplåst AMD FX processor och minnen som tar nästan hur mycket Hz som helst, sen typ kaskad kompressor kylning så går det väl...

och förresten, när du överklockar tar man Prime95 torture test så berättar dne om processorn räknar fel eller inte på iterationerna~ så klarar den Prime's så klarar dne dina

Visa signatur

AMD Athlon 64 3200+ Winchster @ 2500mhz, org 2000mhz. En 512MB Kingtson HyperX minne 250mhz 3,3,3,9, org 200mhz 2,2,2,5. Ratio 1-1. MSI K8N Neo2 Platinum 54G. Radeon 9600SE. Maxtor 40GB och 120GB Wstern Digital.

Permalänk

Beräkningen beror till av hur man representerar talet, ifall jag väljer att representera talet som en 2-potens, så kommer beräkningen att bara ta några få klockcyklar. Problemet kommer ifall man ska konvertera det till någon annan representation.

Visa signatur

Nisse

Permalänk

säger bara detta --- orka

Visa signatur
Permalänk

Maple gjorde den högsta potensen på 0,89 sekunder.

Visa signatur

2xHP w2207, Intel C2D E6750, Gigabyte P35-DS3, Corsair Twin2X2048-6400C4, XFX Geforce 8800GTS, 400GB HDD[br]
Athlon 64 3200+ "Winchester", ASUS A8N-SLI deluxe, Corsair TWINX1024-3200XL, XFX Geforce 6800GT@ULTRA, 160GB HDD

Permalänk

Prova att skriva följande i datorns miniräknare: 1234567!

Visa signatur

Hej Hop

Permalänk
Medlem

Som sagt, det hela beror på hur programmet ser ut. Så länge det finns smart/bra skriven kod så kan man räkna ut det hela!

Förövrigt klarade min räknare 2^3321...

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av sture-allan
Prova att skriva följande i datorns miniräknare: 1234567!

Vet du ens vad formeln betyder ;)? Isåfall borde du antagligen vetat att 12345678! skulle funkat lika bra, eller 123456!...

Visa signatur

Om du svarar på mitt inlägg, citera, tack!

Permalänk
Medlem

datorn kan lagra så stora tal som den är bitar, 16-bit 32-bit osv, det varierar på processorn....

Visa signatur

Också känd som eml
* C99, OSX86, PHP, Python, Warsow

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av SuIZo
datorn kan lagra så stora tal som den är bitar, 16-bit 32-bit osv, det varierar på processorn....

Nja, den kan lagra och beräkna större tal än så. Tyvärr kan den inte operera på större tal än så "i en stöt". Talen behöver alltså delas upp och beräknas i omgångar.

Permalänk
Citat:

Ursprungligen inskrivet av Mikael
Nja, den kan lagra och beräkna större tal än så. Tyvärr kan den inte operera på större tal än så "i en stöt". Talen behöver alltså delas upp och beräknas i omgångar.

Min dator har något nytt som kallas flyttalsenhet, denna gör att den kan räkna på flyttal, ta och kolla upp det.

Visa signatur

Nisse

Permalänk

Sen att du kanske inte fattat att din flyttalsenhet bara har 80-bitarsvidd är ju bara olyckligt för dig.

Visa signatur

P5B-VM, E6400, XMS2 2048MB 800mhz, Sapphire X1900GT, Antec FUSION

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av NisseNord
Min dator har något nytt som kallas flyttalsenhet, denna gör att den kan räkna på flyttal, ta och kolla upp det.

Jag skulle inte kalla 2^x för ett flyttal. Skall man beräkna det exakt så kommer man inte undan begränsningen som ges av det maximala antal bitar som ALU:n kan hantera.

Sedan tycker jag du kan ta din "sköna" attityd och köra upp där den hör hemma.

Permalänk
Hjälpsam

4,5442970191613663099961595907971e+631305 efter Kalkulatorn klagade på att x^2 funktionen var lite trög för första gången.

Sugigt, kalkulatorn är inte multithreaded

Visa signatur

Allt jag säger/skriver här är mina egna åsikter och är inte relaterade till någon organisation eller arbetsgivare.

Jag är en Professionell Nörd - Mina unboxing och produkttester (Youtube)
Om du mot förmodan vill lyssna på mig - Galleri min 800D med 570 Phantom SLI

Permalänk
Hedersmedlem
Citat:

Ursprungligen inskrivet av Fluf

Sugigt, kalkulatorn är inte multithreaded


Snacka om att MS slösat tid om den skulle vara det

Visa signatur

Asus ROG STRIX B550-F / Ryzen 5800X3D / 48 GB 3200 MHz CL14 / Asus TUF 3080 OC / WD SN850 1 TB, Kingston NV1 2 TB + NAS / Corsair RM650x V3 / Acer XB271HU (1440p165) / LG C1 55"
Mobil: Moto G200

Permalänk
Citat:

Ursprungligen inskrivet av ErnstVogel
Sen att du kanske inte fattat att din flyttalsenhet bara har 80-bitarsvidd är ju bara olyckligt för dig.

Varför skulle jag inte fatta det?

Citat:

Ursprungligen inskrivet av Mikael
Jag skulle inte kalla 2^x för ett flyttal. Skall man beräkna det exakt så kommer man inte undan begränsningen som ges av det maximala antal bitar som ALU:n kan hantera.

Varför skulle inte 2^x kunna representeras med mantissa*2^exponent?

Citat:

Ursprungligen inskrivet av Mikael

Sedan tycker jag du kan ta din "sköna" attityd och köra upp där den hör hemma.

Det var ju olyckligt att du inte kunde ta ett skämt, jag ber om ursäkt om du blev förolämpad, men samtidigt så tycker jag du borde hålla dig borta från liknande uttalande.

Visa signatur

Nisse

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av NisseNord
Varför skulle inte 2^x kunna representeras med mantissa*2^exponent?

Det kan det, men jag förstår fortfarande inte hur du menar. Möjligtvis har jag missförstått det hela, men jag trodde att en flyttalsenhet bara räknade på tal med en viss precision (exempelvis upp till 80 bitar). Det skulle ju i så fall betyda att man skulle tappa precision för större tal => icke exakt lösning. Eller om man kan uppnå högre precision genom att göra beräkningen i omgångar, men då är vi ju inne på det jag påstod från början. Som sagt, jag är inte så bra på detta, men eftersom du verkar kunna hur det fungerar så får du gärna berätta. Hur skulle du säga att man får gå till väga om man vill utföra exakta beräkningar på extremt stora tal?

EDIT: Som jag ser det är det väl rätt rimligt att vi helt enkelt får overflow när FPU:ns precision inte räcker till? Frågan är som sagt: Vad göra då?

Citat:

Ursprungligen inskrivet av NisseNord
Det var ju olyckligt att du inte kunde ta ett skämt, jag ber om ursäkt om du blev förolämpad, men samtidigt så tycker jag du borde hålla dig borta från liknande uttalande.

Min dator har något nytt som kallas flyttalsenhet, denna gör att den kan räkna på flyttal, ta och kolla upp det.

Den där meningen är inget skämt, bara en ironisk och nedlåtande kommentar. Vem skulle kunna tycka något sådant är kul!?

Permalänk
Medlem

Nu ska vi se hur lång tid denna beräkningen tar, 12345678! alltså 1*2*3*4*5*6*7*8*12345678, om jag har fattat det rätt

Visa signatur

MSI K8N Neo2 plat, 3200+ Winchester,
TwinMOS Speed Premium PC3500 512MB CL2.5 Winbond BH-5, 40 Gb IBM, 120 Gb WD, T7600gt, Antec truepower 550W

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Jeefy
Nu ska vi se hur lång tid denna beräkningen tar, 12345678! alltså 1*2*3*4*5*6*7*8*12345678, om jag har fattat det rätt

Du menar 1*2*3*4*5*6*7*8*9*...*12345676*12345677*12345678

Det blir ett rätt massivt tal...

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av TheSisko
Du menar 1*2*3*4*5*6*7*8*9*...*12345676*12345677*12345678

Det blir ett rätt massivt tal...

Hehe, märker det, satte igång den 13:52 och den tuggar fortfarande, ska käka nu så får man se om den fortfarande tuggar

Visa signatur

MSI K8N Neo2 plat, 3200+ Winchester,
TwinMOS Speed Premium PC3500 512MB CL2.5 Winbond BH-5, 40 Gb IBM, 120 Gb WD, T7600gt, Antec truepower 550W

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av TheSisko
Du menar 1*2*3*4*5*6*7*8*9*...*12345676*12345677*12345678

Det blir ett rätt massivt tal...

Precis, 12345678! är 1*2*3*4*5*6.....*12345677*12345678

Vad man får fram är hur många kombinationer du kan göra med så många siffror.

EDIT: Jeefy, hur gick det ^^? Bara nyfiken.

Visa signatur

Om du svarar på mitt inlägg, citera, tack!