Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Vorzeichenlose WORD-Zahlen ausgeben Kategorie: Programmierung Basic (von JanPeter - 30.01.2005 22:46)
 Als Antwort auf Re: Vorzeichenlose WORD-Zahlen ausgeben von André H. - 29.01.2005 20:40
Hallo Andre^H!

> Hallo Ihr zwei,
>
> Ich weiß nicht, was Ihr habt.
> Man braucht für die normale Ausgabe von unsigned Word über print
> keine extra Variablen:
>
> #print_un
> if x>=0 then goto pnum
>  print (((x and &h7FFF) shr 1)or &h4000)/5;((x mod 10)+16) mod 10
Diese Berechnung , ist das was ich gesucht habe , Vielen Vielen Dank!!!!!!!!

> return
> #pnum
>  print x
> return
>
>
> Wenn man put braucht (z.B. für LCD an CC1 V1.1), dann braucht man eine
> extra Variable:
>
> #print_un2
>  if x and &h8000 then goto extended
hier geht besser "x<0", bei x and &h8000 habe ich keinen Sprung!
>  temp=x
>  put &h30 + temp/10000
>  #p2
>  put &h30 + (temp/1000) mod 10
>  put &h30 + (temp/100) mod 10
>  put &h30 + (temp/10) mod 10
>  put &h30 + temp mod 10
>  print
>  return
>  #extended
>   temp=(((x and &h7FFF) shr 1)or &h4000)/5
>   put &h30 + temp/1000
>   temp=(((x mod 10)+16) mod 10) +(temp mod 1000)*10
>  goto p2
>
>
> MfG André H.
>
>
> > Hallo,
> >
> > > So aufwendig und speicherfressend ist das nun auch wieder nicht.
> >
> > also ich habe den Code auf der M Unit 2.0 grade getestet und sowohl unter BASIC++ als auch unter CCBasic (1.33) kommen falsche Werte raus. Zum Beispiel:
> >
> > -32322 98750
> > -32321 98751
> > -32320 98752
> > -32319 98753
> > -32318 98754
> > -32317 98755
> > -32316 98756
> > -32315 98757
> > -32314 98758
> > -32313 98759
> > -32312 98760
> > -32311 98761
> > -32310 98762
> > -32309 98763
> > -32308 98764
> > -32307 98765
> >
> > Das ist doch falsch, man kann mit 16 Bit nur maximal Zahlen zwischen 0 uns _65535_ darstellen. Offensichtlich fehlt hierbei wohl ein großer Zahlenraum. Nach meiner Methode brauche ich deutlich mehr Speicher und Variablen und stelle alle Zahlen zwischen 0 und 65535 dar.
> >
> > Gruß,
> >
> > Stefan
>

Ich wollte nicht , das mein Beitrag zur streiterei führt, ich wollte nur eine Lösung!
Und die ist von AndreH gefunden worden.

MfG
JanPeter

Ps:gibt es an der Tu Berlin ein Gästeseminar , über dieses Thema ?

 Antwort schreiben

Bisherige Antworten: