1

J'ai un projet à faire qui consiste à faire une calculatrice en ASM 68k
Cette calc doit pouvoir faire 4 instructions (+-*/) et doit savoir traiter 10 chiffre apres la virgule et 10 apres.
on peut stocker des valeurs dans des Vars (26 de 'A' à 'Z')

Qqun a t-il des idées pour gérer ce genre de calculs ?
Idée : Codage DCB ?

Bien sur il faut aussi rediriger les erreurs (Div par 0 par exemple ou Overflow, underflow ...)
T3 member
TimeToTeam : A new generation of games for TI

2

Va voir les docs sur comment implementer les reels sur une machine bases sur des entiers.

3

tu le fais en C et tu chope le .s gringringringrin

nan je déc grin ms Kevin av posté une source pr gérer les floats... seulement je c plus où...
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

4

Tu désassembles les routines d'AMS, elles le font déjà. grin
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

5

Bon, on va donner une réponse sérieuse:

C'est 10 chiffres avant et 10 chiffres après la virgule dans tous les cas? Pas d'exposant? Alors pas la peine d'utiliser de la virgule flottante ni du DCB (BCD). Tu peux tout coder en virgule fixe en multipliant par 1010. Il te faut donc pouvoir enregistrer des nombres jusqu'à ±1020. Il faut donc au minimum 68 bits, c'est-à-dire 8,5 octets, pour représenter tes nombres. Si tu les représentes sur 9, 10, 12 ou 8,5 octets dépend de la quantité de manipulations supplémentaires que tu veux faire pour économiser de la place.

Et plutôt de rediriger les exceptions, il peut être judicieux de vérifier avant s'il y a erreur. Surtout pour la division par 0, vu que tu ne peux pas utiliser les instructions du 68k pour diviser des nombres sur plus de 4 octets.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

6

les nombres floattant oua c cho !!!

nous a la FAC on nous appris la norme IEEE754:
x=(-1)^signe*1,Mantisse^127-exposant
et c stocke:
signe exposant mantisse
1bits 8bits 23bits

et c pour du simple precision (32bits)
Plus tu pedale moins vite moins t'avance plus vite
Ma team CS

7

T'es en 2e année de MIAS toi nan ? smile
[ Come take us out of here / take us anywhere... oh yeah ]

8

yep pourquoi ?
Plus tu pedale moins vite moins t'avance plus vite
Ma team CS

9

C comme ca sur la HP aussi smile
Cours et tutos Asm: http://membres.lycos.fr/sirryl

10

FluF
a écrit : yep pourquoi ?


Bah juste parce que j'ai fait la même chose cette année au premier semestre... T'es pas à Paris VI par hasard ?
[ Come take us out of here / take us anywhere... oh yeah ]

11

Non il est à Pau rulez.

12

zdr
a écrit : Non il est à Pau rulez.


yeahhhhh PAU ruuuuuuuuullllllleeeeeeeeeeezzzzzzzzzzzzzzzz
c trop top sur avec une maison dans les landes (pour la plage)
Plus tu pedale moins vite moins t'avance plus vite
Ma team CS

13

Merci KK & FluF

Je pense que je vais adopter une représentation à virgule fixe : 5 bytes + , + 5 bytes
T3 member
TimeToTeam : A new generation of games for TI

14

je pense que c quand meme la plus simple a implementer meme si tu peu faire 16bits,16bits je pense que sera encore plus simple wink
Plus tu pedale moins vite moins t'avance plus vite
Ma team CS

15

Ça ne suffit pas pour la précision demandée.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité