Gå til innhold
Trenger du hjelp med internett og nettverk? Still spørsmål her ×

ASCII 7-bit = 128? (løst)


Anbefalte innlegg

Okey, skal prøve å forklare, selv om det er noe jeg ikke kan.

 

ASCII ble lansert som en 7bit standard. 1 bit = 1 binær verdi (1 eller 0), 7 bit = 7 binære verdier (1+2+4+8+16+32+64 = 127). Så hvorfor sier nettverksboka mi at 7 bit ble 128 verdier?

 

Videre sier den at den nå er 8 bit standard, og derfor 128 verdier mer (neste verdi i binærrekken er 128), og Unicode som er en 16 bits standard har 65535 (verdi nummer 16 i binærrekken er, som du kanskje allrede har gjettet, 65535).

 

Alt er logisk, og i henhold til mine kalkulasjoner, unntatt 7 bit standaren.

 

Kan noen forklare det til meg, sliter virkelig med det der.. :hmm:

Endret av Rippo
Lenke til kommentar
Videoannonse
Annonse
Har sett flere "tabeller" om dette, og ingen teller med 0 som en verdi.

 

For eksempel tallet 17 vil bli på binær "10001". Ingen verdier som representerer 0.

2-talls (Binært) 0000000 = 10-talls 0.

 

Se http://www.lookuptables.com/ og ascii så ser du at 0 = null... null er et tegn det også. Selv om mange programmerere har ett litt anstrengt forhold til null-typen.

Endret av martiol
Lenke til kommentar

Det blir 128 forskjellige verdier, men 127 som største verdi. 8 bit har 255 som største verdi, men 256 forskjellige verdier(med 0).

 

1+2+4+8+16+32+64+128 = 255.

 

1 bit = 0 eller 1 = to forskjellige verdier

2 bit = 00, 01, 10 eller 11 = 4 forskjellige verdier, 3 som største osv.

 

2^8 = 256

2^7 = 128

Lenke til kommentar
Har sett flere "tabeller" om dette, og ingen teller med 0 som en verdi.

 

For eksempel tallet 17 vil bli på binær "10001". Ingen verdier som representerer 0.

2-talls (Binært) 0000000 = 10-talls 0.

 

Se http://www.lookuptables.com/ og ascii så ser du at 0 = null... null er et tegn det også. Selv om mange programmerere har ett litt anstrengt forhold til null-typen.

Hva mener du med det?

 

Må ikke en binær tallrekke inneholde minst ett 1-tall?

0 er et tall det også... Eller??

EDIT nei det må ikke finnes noe 1-tall i et binært tall.

 

1 med 8 bits = 00000001

0 med 8 bits = 00000000

 

Tall begge to.

 

int i = 0 er ikke det samme som int i = null.

selv om jeg sier at i = 0 vil det tas opp en hel integer. Hvis det programmet du bruker har 8 bit ascii vil det tas opp 8 bit uansett hva du putter i i. heh

Endret av martiol
Lenke til kommentar
int i = 0 er ikke det samme som int i = null.

 

Jo det er det ;)

 

char i = "0" er derimot forskjellig :D

Kan du forklare hvordan de to er det samme?

For slik jeg har forstått det vil [int i = 0] lagre tallet 0 i en plass i minnet og i vil gi adressen dit.

[int i = null] derimot lagrer i mange språk ingenting i minnet men peker i mot minneadresse 0.

 

Det første kan hentes ut osv men det siste peker ikke til et objekt og gir run-time error dersom du prøver å bruke det som et integer.

 

Dette er slik jeg tror det virker. Om dette er feil setter jeg pris på om du forklarer hvordan det egentlig er.

Endret av JohndoeMAKT
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...