Il faut 5 heures sur un clone famicom 8 bits (SB2000) pour calculer 80 décimales de PI
C’est juste pour le plaisir, et bien sûr pour ces bons souvenirs avec des clones de famicom 8 bits.
Subor SB2000 (tel que décrit ici) est un clone famicom 8 bits avec clavier. La dernière fois, une solution F-BASIC simple est présentée pour calculer l’approximation de PI. mais aujourd’hui, nous allons calculer plus de décimales après le point en utilisant F-BASIC.
L’algorithme que nous allons utiliser est décrit dans cette page. C’est une formule infinie mais directe :
Il a fallu environ une heure pour calculer pour seulement 40 positions de précision et 5 heures pour 80 décimales. Pouvez-vous imaginer à quel point c’est lent? Sur PC moderne, le même code sera exécuté en moins d’une seconde sans aucun doute.
Floating BASIC n’est pas si flottant !
La source F-BASIC complète est (peut varier un peu)
1 REM *********************************
5 REM *JUST FOR FUN *
6 REM *F-BASIC PROGRAM BY
Quelques observations sur le code F-BASIC ci-dessus :
1 le code est difficile à lire, car le code n’est pas en retrait mais un numéro de ligne obligatoire doit être présent au début de chaque instruction.
2 utiliser goto est désordonné. J’ai essayé de les éviter mais la base se plaint d’une erreur de syntaxe (mais en fait pas) de l’instruction ‘FOR’ (et je ne sais pas pourquoi). Par conséquent, je dois utiliser goto pour simuler le ‘FOR’
3 numéros de ligne (étiquettes) sont automatiquement triés dans l’ordre croissant.
4 en utilisant list pour voir la source, et run pour exécuter le programme. Il n’y a aucune fonction de débogage.
Cela prend encore environ longtemps si vous exécutez le programme dans l’émulateur 8 bits, par exemple VirtualNES.
calcul-pi