[ ***ArChAnGeL*** @ 08.05.2004. 01:36 ] @
Pre par dana u temi je bilo reci o decimalnim brojevima i njihovom prestavljanju u binarnom obliku.Na ETF-u sam imao domaci da realne brojeve ispisem u binarnom obliku pa ako nekom treba... Realni brojevi se pretstavljaju kao R=((-1)na s)*(2 na E)*1.mmmmm gde je s bit za znak 0 za + i 1 za - E je stepen dvojke (eksponent) a 1.mmmmm je normalizovana mantisa po IEEE standardu u kodu je primenjena mala igra sa pokazivacima pa on izgleda ovako: main () { float broj,*pf; unsigned int unint,*pui; scanf("%f",&broj); pf=&broj; pui=(int *)pf; unint=*pui; puts("Ispis:"); printf("-binarni oblik float-a: "); for(i=0,bin=unint;i<32;i++) { putchar((bin & 0x80000000)?'1':'0'); bin<<=1; if (i==0 || i==7 || i==22) putchar(' '); } printf("\n"); } |