Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Cint(True)

Îåêßíçóå áðü ôï ìÝëïò Ioannis P. Τελευταία δημοσίευση από το μέλος azazeal στις 14-02-2007, 20:43. Υπάρχουν 10 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  13-04-2006, 09:52 11845

    Cint(True)

    Χθες είδα κάτι παράξενο στη VB05. Η Cint(True) δίνει -1 και όχι 1 όπως θα περίμενα.
    Γιατί δεν μου φαίνεται λογικό;
  •  13-04-2006, 12:54 11855 σε απάντηση της 11845

    Απ: Cint(True)

    Κατά παράδοση, η VB θεωρεί μεν ως true, οτιδήποτε μη μηδέν, αλλά η μετατροπή του true σε αριθμό είναι -1.
    Μην αφήνετε τα media να σας "ταΐζουν"!
  •  14-04-2006, 00:11 11877 σε απάντηση της 11855

    Απ: Cint(True)

    Βασικά, false=0 οπότε έχουμε ότι true=NOT(false) <=> true = ΝΟΤ(0) <=> true = 11111111(δυαδικό) <=> true = -1!

     

    George J.


    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
  •  14-04-2006, 08:46 11881 σε απάντηση της 11877

    Απ: Cint(True)

    Δεν κατάλαβα... το 11111111 γιατί κάνει -1 και όχι 255;
    Χρήστος Γεωργακόπουλος
  •  14-04-2006, 13:43 11897 σε απάντηση της 11845

    Απ: Cint(True)

    ΟΚ, το

    11111111(δυαδικό) κάνει 255

    το

    NOT(0) =

    = 11111111 11111111 11111111 11111111(δυαδικό)

    όμως, κάνει -1

    ¨

    :)

  •  14-04-2006, 16:08 11904 σε απάντηση της 11897

    Απ: Cint(True)

    Πάλι δεν κατάλαβα... Το πρόσημο πως αλλάζει με μετατροπές από το ένα σύστημα στο άλλο ή με λογικές πράξεις; Το 2^32 γιατί κάνει -1;
    Χρήστος Γεωργακόπουλος
  •  14-04-2006, 20:00 11908 σε απάντηση της 11904

    Απ: Cint(True)

    Το πρώτο δυφίο - που είσαι Σωτήρη να με δεις! - είναι το πρόσημο. Το 1 είναι το αρνητικό πρόσημο (-) και το 0 είναι το θετικό πρόσημο (+). Από το αρνητικό αριθμό μπορούμε να πάμε στον θετικό αριθμό με NOT και προσθέτοντας την μονάδα – δυαδικό 1.

    Καλά δυαδική άλγεβρα δεν έχει κάνει κάποιος;  :-)

     

    George J.


    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
  •  14-04-2006, 21:03 11910 σε απάντηση της 11845

    Απ: Cint(True)

    Ναι, αλλά δε φαίνεται πουθενά αν είναι signed ή όχι.

    Χμ, τι 'ν' τούτο ωρέ; Δυφίο; Η ορολογία του RAM ξαναχτυπά;
    Μην αφήνετε τα media να σας "ταΐζουν"!
  •  14-04-2006, 21:41 11911 σε απάντηση της 11910

    Απ: Cint(True)

    Ναι, το δυφίο του RAM! (Το διόρθωσα ορθογραφικά και στη προηγούμενη δημοσίευση)

    Από παραδοχής το πρώτο σημείο είναι το πρόσημο. Το πρόσημο υπάρχει, εκτός αν αναφέρεται ότι δεν υπάρχει. Από αυτό πηγάζουν και οι ορισμοί των τύπων των μεταβλητών των γλωσσών προγραμματισμού...

     

    George J.


    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
  •  15-04-2006, 15:08 11919 σε απάντηση της 11908

    Απ: Cint(True)

     gcapnias wrote:

     Το 1 είναι το αρνητικό πρόσημο (-) και το 0 είναι το θετικό πρόσημο (+). Από το αρνητικό αριθμό μπορούμε να πάμε στον θετικό αριθμό με NOT και προσθέτοντας την μονάδα – δυαδικό 1.



    αυτή είναι η αναπαράσταση αριθμού με συμπλήρωμα ως προς δύο.
    Οι άλλες δύο αναπαραστάσεις είναι η παράσταση αριθμών με μέτρο και πρόσημο, δηλ το MSB(most important bit -> το πρώτο ψηφίο του αριθμού) αναπαριστάνει το πρόσημο και τα υπόλοιπα ψηφία το μέτρο του αριθμού, και η αναπαράσταση αριθμού με συμπλήρωμα ως προς ένα, όπου είναι ίδια με την αναπαράσταση αριθμού με συμπλήρωμα ως προς δύο, απλά δεν υπάρχει η πρόσθεση της μονάδας και συνεπώς η μετατόπιση των ψηφίων κατά μία θέση δεξιά.

    Dimitris-Ilias Gkanatsios
    Developer Evangelist, Microsoft Hellas

    My Blog
    StudentGuru
    Twitter
    Facebook
  •  14-02-2007, 20:43 25014 σε απάντηση της 11919

    Απ: Cint(True)

    dt008:
    gcapnias:

     Το 1 είναι το αρνητικό πρόσημο (-) και το 0 είναι το θετικό πρόσημο (+). Από το αρνητικό αριθμό μπορούμε να πάμε στον θετικό αριθμό με NOT και προσθέτοντας την μονάδα – δυαδικό 1.



    αυτή είναι η αναπαράσταση αριθμού με συμπλήρωμα ως προς δύο.
    Οι άλλες δύο αναπαραστάσεις είναι η παράσταση αριθμών με μέτρο και πρόσημο, δηλ το MSB(most important bit -> το πρώτο ψηφίο του αριθμού) αναπαριστάνει το πρόσημο και τα υπόλοιπα ψηφία το μέτρο του αριθμού, και η αναπαράσταση αριθμού με συμπλήρωμα ως προς ένα, όπου είναι ίδια με την αναπαράσταση αριθμού με συμπλήρωμα ως προς δύο, απλά δεν υπάρχει η πρόσθεση της μονάδας και συνεπώς η μετατόπιση των ψηφίων κατά μία θέση δεξιά.


    Χμμμμ.... μυρίζομαι προγραμματιστή με θεωρητικό υπόβαθρο... χμμμμ.... ΠΠΣ1 και ΠΠΣ2... χρόνια είχα να τα ακούσω!!!
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems