PDA

Επιστροφή στο Forum : Byte πανω απο το 255



savnik
01-05-06, 21:27
Επειδή το ενα byte μετραει μεχρι το 255 , με ποιο τροπο μπορω να μετρησω παραπανω
Θελω να το γραψω σε ASM(για να το παρεμβαλω σε καποιο προγραμμα που εχω)

PiCBuRn3r
01-05-06, 23:25
Με integer. Για ASM δεν ξέρω πως το κάνεις αυτό...

gsmaster
02-05-06, 00:56
Λοιπόν, μου έρχονται δυο τρόποι στο μυαλό.
1. Έχεις δυο μετρητές που μετράνε 0-255 πχ LowByte και HighByte. αυξάνεις τον LowByte κατα 1 και όταν αυτός πάει απο 255 σε 0 αυξάνεις και τον HighByte κατα 1. Έχει λίγο φασαρία όμως αν θες να το απεικονίσεις.

2. Έχεις τόσους καταχωρητές όσους και τα ψηφία που θες να μετρήσεις. πχ για 0-999 χρειάζεσαι 3 καταχωρητές, ο ένας για τις μονάδες, για τις δεκάδες, και ΄για τις εκατοντάδες. όταν οι μοναδες πάρουν την τιμή 10, αυξάνεις τις δεκάδες και μηδενίζεις τις μονάδες. Μετά ελέγχεις αν και οι δεκάδες είναι 10 και και πάει λέγοντας. Αυτός ο τρόπος είναι πιο εύκολος στην απεικόνηση γιατί έχεις ήδη τα ψηφία σε ξεχωριστούς καταχωρητές.



Αυτό είναι ένα κακό της assembly, ενώ σε έναν compiler ορίζεις την μεταβλητή σαν 16bit αριθμό (int που λέει κι ο συνονόματος πιο πάνω) και ξεμπερδεύεις.