Måten datamaskiner håndtere negative tall er annerledes enn slik mennesker gjør. Det er ingen minustegn i binær og så et system som kalles toerkomplement brukes . Under dette systemet , blir plassen brukt til å lagre en rekke delt i to, halvparten for de positive tallene og halvparten for det negative. Den største 32 - bits heltall er 4294967295 . Når du arbeider med positive og negative tall , kjent som signerte tall, er den største 32 -bit positive nummer 2147483647 og den største negative tall er -2147483648 . Siden disse er grensene for 32 -biters tall er det et merkelig fenomen hvor du legger en til 2147483647 resultater i -2147483648 . En enkel Visual C + + prosjektet viser dette. Du trenger
Microsoft Visual C + + 2010 Express
Vis flere instruksjoner
en
Klikk på Windows "Start "-ikonet , velg " Alle programmer " og deretter " Microsoft Visual Studio 2010 Express. " Klikk på " Microsoft Visual C + + 2010 Express. "
2
Klikk på "File "-menyen og naviger til " New". Klikk på " Project" for å åpne det nye prosjektet dialogen.
3
Klikk " Win32 " i installerte maler trevisningen på venstre side av dialogboksen. Klikk " Win32 Console Application. " Skriv inn et navn for prosjektet (for eksempel " negativenumbers ") i "Name : "-feltet mot bunnen av dialogboksen. Klikk "OK" for å åpne " Win32 Application Wizard" dialogboksen . Klikk "Finish". Selv om dette er en C + + prosjektet , er koden i neste trinn ren C.
4
Erstatt standard kode som vises i redigeringsprogrammet med følgende kode :
# include " stdafx.h "
int main ( int argc , char * argv [ ] )
{
usignert int ui = 0;
int i = 0 ;
ui = ui - 1; /* 0 - 1 = 4294967295 * /
i = i - 1; /* 0 -1 = -1 * /
< p > printf ( " unsigned int :% u \\ n" , ui ) ;
printf (" int :% d \\ n" , i) ;
ui = 2147483647 ;
< p> i = 2147483647 ;
ui = ui + 1; /* 2147483647 + 1 = 2147483648 * /
i = i + 1; /* 2147483647 + 1 = -2147483648 * /
printf ( " unsigned int :% u \\ n" , ui ) ;
printf (" int :% d \\ n" , i) ;
return 0 ;
}
5
Trykk " F7 " eller klikk på " Debug "-menyen , deretter " Build Solution " for å kompilere programmet og vise resultatet i Output -vinduet mot bunnen av Visual C + + : en
========== Bygg : 1 lyktes, 0 mislyktes, 0 up- to-date , 0 hoppet ==========
< p> Hvis resultatet er " 0 lyktes " og deretter en rekke feil , sjekk den koden du har skrevet inn og sikre at det er identisk med koden i trinn fire .
6
Trykk " Ctrl + F5 "for å kjøre programmet .