Bit ali Byte

MadMitch

Fizikalc
29. sep 2008
6.163
0
36
Citat:
Uporabnik Bush pravi:
Takrat je bil popularen osmiški sistem (2x3bite). Danes se v programiranju uporablja samo še hex (2x4bite).

A je mene zob bolel, ko smo tole jemal, sem kaj pozabil al si se ti mal zatipkal.

Osmiški ne more biti 2x3 pa če se še tko matraš. Mah, najbrže bom jaz kriv, k sem čist analogen.
stupid-1.gif
 

Bush

Fizikalc
19. okt 2008
1.735
0
36
MadMitch, zapiši 0xFF v osmiškem, pa boš razumel
wink-1.gif


Za 6-bitni BCD je pa bolj pregledno, če je zapisan v osmiškem (2x3).
 

MadMitch

Fizikalc
29. sep 2008
6.163
0
36
Citat:
Uporabnik Bush pravi:
MadMitch, zapiši 0xFF v osmiškem, pa boš razumel
wink-1.gif


Za 6-bitni BCD je pa bolj pregledno, če je zapisan v osmiškem (2x3).
Ne ne bom, ti bom kar na besedo verjel, ker ti je to sigurno bolj jasno kot meni.
Lahko ti pa dam definicijo morske milje, razložim delovanje regulatorja obratov dizelskih dvotaktnih motorjev al pa razložim, kako se popravi separator težkega goriva.
grin1.gif
 

doto

Fizikalc
25. jul 2007
3.175
0
36
Ja sej, kaj sem pa jaz napisal? Z mikroprocesorji so pa v ospredje prišli byti, ker so se operacije izvajale nad 8biti, kasneje pa še 16, 32 in sedaj 64 biti.

Oktalni zapis še uporablja. Pravice nad datotekami v unix sistemih recimo se še vedno podajajo na ta način.

Sicer pa wikipedia pravi tole.

Citat:
The term byte stems from bite, as in the smallest amount of data a computer could bite at once.
 

Radirko

Fizikalc
18. avg 2007
6.242
0
36
Citat:
Uporabnik MadMitch pravi:
Citat:
Uporabnik Bush pravi:
Takrat je bil popularen osmiški sistem (2x3bite). Danes se v programiranju uporablja samo še hex (2x4bite).

A je mene zob bolel, ko smo tole jemal, sem kaj pozabil al si se ti mal zatipkal.

Osmiški ne more biti 2x3 pa če se še tko matraš. Mah, najbrže bom jaz kriv, k sem čist analogen.
stupid-1.gif

Najbrz si premlad (oziroma velja to za oba).

Osmiski zapis, kar pac to je v kontekstu racunalnistva, ni uporabljal ali izviral iz zapisa bajta s po 2x3 (= 6) biti. Dalec preden je bil narejen prvi mikroprocesor, preden je 8-bitni bajt "zmagal" in preden so ljudje dobili obcutek, da drugace kot "1 bajt = 8 bitov" sploh ne more biti, je bilo vec razlicnih zapisov podatkov. En od njih je bil z 9-bitnimi bajti (3x3 bite, "racunalniskii" zapis stevila v oktalnem sistemu ima tri stevke, ceprav seveda lahko zapises v oktalnem sistemu vsako stevilo, ki ima po tri bite na stevko, torej 1x3, 2x3, 3x3, 4x3, 5x3, 6x3, itd.), katere so takratni racunalniki bili sposobni zloziti v besede (word) po 18 in kasneje 36 bitov.

Danes to zveni prismojeno, ker je "vse" videti 8-bitno (ceprav seveda ni tako; tipicen primer so recimo fizicni zapisi na opticnih medijih, na diskih, itd., cesar vecina uporabnikov ne vidi), takrat je bila pa to cisto normalna opcija in ne bi bilo nic pretirano cudnega, ce bi prevladala, saj so bili Digitalovi PDPji (od katerih je bilo mnogo modelov 18 ali 36-bitnih, nekateri so bili pa se bolj cudni, torej 12/24-bitni) zelo popularni.
 

Utisevalec

Guru
12. nov 2007
16.101
4.068
113
Citat:
Uporabnik Radirko pravi:
Osmiski zapis, kar pac to je v kontekstu racunalnistva, ni uporabljal ali izviral iz zapisa bajta s po 2x3 (= 6) biti. Dalec preden je bil narejen prvi mikroprocesor, preden je 8-bitni bajt "zmagal" in preden so ljudje dobili obcutek, da drugace kot "1 bajt = 8 bitov" sploh ne more biti, je bilo vec razlicnih zapisov podatkov. En od njih je bil z 9-bitnimi bajti (3x3 bite, "racunalniskii" zapis stevila v oktalnem sistemu ima tri stevke, ceprav seveda lahko zapises v oktalnem sistemu vsako stevilo, ki ima po tri bite na stevko, torej 1x3, 2x3, 3x3, 4x3, 5x3, 6x3, itd.), katere so takratni racunalniki bili sposobni zloziti v besede (word) po 18 in kasneje 36 bitov.

Danes to zveni prismojeno, ker je "vse" videti 8-bitno (ceprav seveda ni tako; tipicen primer so recimo fizicni zapisi na opticnih medijih, na diskih, itd., cesar vecina uporabnikov ne vidi), takrat je bila pa to cisto normalna opcija in ne bi bilo nic pretirano cudnega, ce bi prevladala, saj so bili Digitalovi PDPji (od katerih je bilo mnogo modelov 18 ali 36-bitnih, nekateri so bili pa se bolj cudni, torej 12/24-bitni) zelo popularni.

Kar se tiče bajta je to "osnovna" enota računalniškega zapisa .. in ja lahko ima tudi več ali manj kot 8 bitov. Trenutnih 8 bitov na byte je zato ker je to nekako ob masovnem pojavu računalništva bila idealna enota za zapis katerekakoli ZNAKA .. šele iz te osnove so potem izhajali mikroprocesorji ki so znali obdelovati podatke po oktetih (bytih).

To kar govoriš o nosilcih podatkov pa nima veze z bitom-bytom, vsi nosilci podatkov imajo namreč zaradi varnosti t.i. "kontrolne bite" in dejansko zapis podatkov na tak nosilec (npr. CD) vzame več prostora kot pa drži "informacij". To še ne pomeni da uporablja 9bitni sistem, ampak je nosilnih bitov še vedno natanko 8. Isto se kontrolne bite uporablja tudi v samem procesorju in pa vodilih ter pri delovnem pomnilniku .. pač tam kjer je potrebna visoka toleranca zaradi možnosti napak.
 

Radirko

Fizikalc
18. avg 2007
6.242
0
36
Citat:
Uporabnik Utisevalec pravi:
To kar govoriš o nosilcih podatkov pa nima veze z bitom-bytom, vsi nosilci podatkov imajo namreč zaradi varnosti t.i. "kontrolne bite" in dejansko zapis podatkov na tak nosilec (npr. CD) vzame več prostora kot pa drži "informacij". To še ne pomeni da uporablja 9bitni sistem, ampak je nosilnih bitov še vedno natanko 8. Isto se kontrolne bite uporablja tudi v samem procesorju in pa vodilih ter pri delovnem pomnilniku .. pač tam kjer je potrebna visoka toleranca zaradi možnosti napak.

Kakor gledas na to - na koncu ti recimo opticna enota en CD (na najnizjem nivoju) predstavi vsebino v 8-bitnih "odmerkih" (bajtih), pa ceprav so podatki fizicno zapisani s 14 biti na bajt, vmes so pa se dodatni biti za statisticno izravnavo podatkovnega toka (torej po 17 bitov na 8-bitni bajt).

Enako je recimo pri magnetnih diskih, tega vecina ljudi ne vidi, a osnovna enota ni 8-bitni bajt (je vecji, zato da lahko hrani redundancne ifnormacije).

Obcutek imam, da ti mesas dve stvari: eno je kolicina zate aktualne informacije (redundancnih informacij ne rabis, dokler so podatki vsi v redu), drugo je pa kolicina informacije, ko jo zapis premore. Ti razmisljas v kontekstu kontrolnih podatkov, ko je bitov nekaj vec, ceprav ne gre nujno za to (lahko je samo tak zapis, glej npr. Grayeve kode za lazjo interpretacijo).

Kot sem napisal zgoraj: seveda se za potrebno kolicino infiormacij se danes uporabljajo bloki "nestandardnih" velikosti (narekovaji zato, ker ni cisto nic nestandardnega tam, pac je taka kolicina potrebna za doloceno informacijo) v razlicnih vrstah opreme, kljub temu, da je podatke na koncu potrebno "prevesti" na zdaj najbolj uporabljani 8-bitni zapis. Poleg medijev za hrambo podatkov so tipicen primer tudi komunikacijske povezave za prenos teksta - ce recimo sprejmem sporocilo v Baudotovi kodi in ga zapisem na mojem PCju, je to potem 8-bitno sporocilo ? Ne, seveda ni, je pac 5-bitno, tudi ce ga jaz predstavim v 8-bitnem zapisu.
 

Bush

Fizikalc
19. okt 2008
1.735
0
36
OK, algoritmi za odpravljanje napak niso ravno nekaj s čimer se pogosto srečuješ, razen če pišeš firmware ali driverje. Pa še takrat so redundatni biti dodani originalnim osmim bitom.

Hex je praktičen, ker vedno potrebuješ 2 znaka/byte, 4 znake/word, 8 znakov/dword, 16 znakov/qword (x86 terminologija). Osmiški sistem je pri tem skoraj tako nepraktičen kot desetiški. Lažje je delo z bitnimi operatorji, zapis negativnih števil ipd.

Drugače pa je tu lepa razpredelnica dolžine besede ("word"), ki je v resnici osnovna enota podatkov v posamezni arhitekturi - in ne byte.

http://en.wikipedia.org/wiki/Word_(computing)#Table_of_word_sizes
 

Radirko

Fizikalc
18. avg 2007
6.242
0
36
Citat:
Uporabnik Bush pravi:
OK, algoritmi za odpravljanje napak niso ravno nekaj s čimer se pogosto srečuješ, razen če pišeš firmware ali driverje. Pa še takrat so redundatni biti dodani originalnim osmim bitom.

Saj sem dvakrat to napisal.

To, ali je kaj dodatno, je stvar gledisca. Originalnih 8 bitov tam ni, namesto tega je vecje stevilo ustrezno prekodiranih bitov, da zapis zadosti dolocenim pogojem, zaradi katerih ga je sploh mogoce prakticno 100% pravilno restavrirati.

Citat:
Hex je praktičen, ker vedno potrebuješ 2 znaka/byte, 4 znake/word, 8 znakov/dword, 16 znakov/qword (x86 terminologija). Osmiški sistem je pri tem skoraj tako nepraktičen kot desetiški. Lažje je delo z bitnimi operatorji, zapis negativnih števil ipd.

confused-1.gif


Mi lahko pokazes s primerov za vsako od teh tock (binarne operacije, zapis negativnih stevil, ipd.) zakaj bi bil osmiski zapis inferioren sesnajstiskemu ?

Msilim, da gledas(-te) na stvar prevec ozko, izkljucno v kontekstu trenutne paradigme 1 bajt = 8 bitov. Vsa matematika spodaj je enaka, vsi problemi so isti, pac tako je naneslo, da je prevladal tak "standard" (lahko bi pa tudi kateri drugi ... ko/ce enkrat v daljni prihodnosti pridejo kvantni racunalniki s po tremi moznimi stanji vsakega bita, bo pa tako ali tako spet drugace, ker 8 bitov ne mores ucinkovito zapisati s celim stevilom kubitov, in takratni ljudje bodo na FutureAlterju debelo gledali nas neandertalce, cez kako smo lahko izbrali tako budalestino, ceprav smo pricakovali tezave enkrat v prihodnosti).

Zanimiva tema.
 

Bush

Fizikalc
19. okt 2008
1.735
0
36
Citat:
Uporabnik Radirko pravi:
Mi lahko pokazes s primerov za vsako od teh tock (binarne operacije, zapis negativnih stevil, ipd.) zakaj bi bil osmiski zapis inferioren sesnajstiskemu ?

Binarne (bitwise) operacije
RGBA - RGB z alpha kanalom, 8-bit, tj. RRGGBBAA - se lahko neposredno zapiše s hex številkami.
Če imaš 16-bitni RGBA, se ga lahko zapiše RRRRGGGG BBBBAAAA.

& 0xFF000000 - rdeča
& 0x00FF0000 - zelena
& 0x0000FF00 - modra
& 0x000000FF - alpha

Če hočeš dodati to barvo, narediš OR; če hočeš na novo nastaviti XOR,OR.

Pozitivna/negativna števila
pozitivna števila: 00-7F, negativna 80-FF (prvi dve števki, ne glede na nadaljevanje)
npr. 7FFFFFFF - vedno pozitivno število
80000000 - vedno negativno število.
 

Radirko

Fizikalc
18. avg 2007
6.242
0
36
In kaj od tega po tvojem mnenju ne deluje oziroma je neprakticno v sistemu z osnovo 8 ? Za vsakega lahko izberes poseben primer, kjer so podatki lepo poravnani - primer:

"V denarnici imam 0xB bankovcev po 0x64 EUR, nov racunalnik me stane 0x1F4 EUR, koliko denarja mi bo se ostalo ?"

Je zato sesnajstiski zapis neuporaben v primerjavi z desetiskim, ker so tam pac stevilke iz zgornjega primera lepo poravnane ?

Ali pa je morda duodecimalno-seksagezimalni sistem tisto pravo ? Ko me kolega poklice, mu ne odgovorim da pridem cez 0x12C sekund, ampak cez 5 minut, torej mora biti ta najboljsi ?
smile-1.gif


Ce podatke lepo pripravis, je vsak sistem [s pozitivno osnovo] prima. Gre zgolj za to na kaj si navajen, koliko razlicnih simbolov si si sposoben zapomniti in kako dolga zaporedja takih razlicnih simbolov si si sposoben zapomniti. BTW, tole me je spomnilo na enega poba, ki je bil pred leti na TV pri Oliverju Mlakarju in si je za rajo poskusal zapomniti niz 300 desetiskih cifer ... bom povedal zgodbico ob kaksni drugi priliki, ce bo sla tale zadeva se naprej.


Glede zapisa negativnih stevil v dvojiskem komplementu pa malce v razmislek: je kje kaksna ovira, da (ne glede na osnovo) prvi bit stevila interpretiras kot predznak, ce ti tako ustreza ? Je recimo cetrtiski sistem uber alles ker res takoj na prvi uc ves, da ce je prva cifra 2 ali 3, potem je stevilo negativno ?
wink-1.gif
 

Bush

Fizikalc
19. okt 2008
1.735
0
36
Citat:
Uporabnik Radirko pravi:
In kaj od tega po tvojem mnenju ne deluje oziroma je neprakticno v sistemu z osnovo 8 ?
Zapiši RGB(255,0,0), RGB(0,255,0) in RGB(0,0,255) v osmiškem
grin1.gif
 

Bush

Fizikalc
19. okt 2008
1.735
0
36
Citat:
Uporabnik Radirko pravi:
0377, 0, 0

0, 0377, 0

0, 0, 0377

In zdaj ?
Ne!

Hex:
0xFF0000 - rdeča
0x00FF00 - zelena
0x0000FF - modra

Octal:
077600000 - rdeča
000177400 - zelena
000000377 - modra
 

Radirko

Fizikalc
18. avg 2007
6.242
0
36
Brez zamere, a obcutek imam, da dopovedujem stvari zidu.

Ti si vprasal kako naj bi zgledale vrednosti 255, 0, 0 itd. in ne kako naj bi izgledale vrednosti 16711680, 65280 in 255. Nesmisle z za lase privlecenimi bedarijami na nivoju vrtca, kjer bom lahko izbral tako interpretacijo, da bo katerikoli en odgovor "napacen", se lahko grem tudi jaz, a nimam vec volje:

zmagal si, sesnajstiski zapis je edini zvelicani, ura je ze 0x1146B, torej bo kmalu sport, katerega ne zelim zamuditi, zato te zapuscam s pridobljeno slavo
smile-1.gif
 

Bush

Fizikalc
19. okt 2008
1.735
0
36
Citat:
Uporabnik Radirko pravi:
Brez zamere, a obcutek imam, da dopovedujem stvari zidu.

Ti si vprasal kako naj bi zgledale vrednosti 255, 0, 0 itd. in ne kako naj bi izgledale vrednosti 16711680, 65280 in 255.
Glede zida, enako
rolleyes-1.gif


Kaj ponavadi vprašaš, za rezultat funkcije ali za parametre funkcije, ki so že napisani
confused-1.gif