Autor: Gotfryd Smolik - listy dyskusyjne (smolik_at_stanpol.com.pl)
Data: Fri 09 Feb 2001 - 19:46:28 MET
On Tue, 6 Feb 2001, Jaroslaw Rafa wrote:
>+ Dnia 5 Feb 01 o godz. 4:22, Radosław Popławski napisal(a):
>+
>+ > W Bajtku nr 2/86 jest polemika [...]
>+ Hmmm... zdaje sie ze istnieja dwie szkoly terminologiczne, bo ja zawsze
>+ wiedzialem (i tak mnie uczyli), ze to "cos" co w maszynach 16-bitowych ma 16
>+ bitow (a w 32-bitowych 32 bity i tak dalej...), to jest SLOWO, a bajt Z
[1]
>+ DEFINICJI jest jednostka rowna 8 bitom...
...no to jest jeszcze trzecia, właściwa ;) szkoła -:) która
przegrała z twoją :] !
Pozostaje problem: co za "coś", SŁOWO i BAJT !?
Dyskusja niedawno była - to że się streszczę: x86 (wstawić od "0"
do "4") miały hardwareowo różne ilości bitów adresowych, hardwareowo
mogły przesyłać 8 lub 16 bitów (a później nastało Pentium i bitów
przybyło);
Wniosek: "hardware mówimy nie".
Zaś "logicznie" operować mogą na 4/8/16/32 bitach żeby wymienić
te ważniejsze operacje bez FPU :) (4 tylko akumulator BCD)
Owszem, adresować mogą 8 i 128 bitów ;> (segmentem !)
Jak mi powiesz, że bajt to jest najmniejsza adresowane przez
składnię adresu jednostka pamięci to odeślę cię na koniec
listu[->2] :)
Wniosek: "logice i architekturze mówimy nie" !
Poważnie mówiąc - to owszem, z czasem metodą "Rover->rower"
(gdzie "Rover" to firma która póżniej m.in. poskładała również
4-kołowca którym Armstrong po Księżycu jeździł) przyjęło się
że bajt=8 bitów.
I że słowo to dwa bajty... choć komputerowi może *nie*
sprawiać róznicy czy operuje na 16- czy 25 bitów !
Zauważ: owszem, SŁOWO dłużej utrzymało się (niż BAJT) jako
"jednostka miary" związana z komputerem (architekturą), ale
ze względów praktycznych (przenośność danych) i trudności
zdefiniowania (komputer może operować na kilku rozmiarach
danych) coraz częściej się potykam o określenia *nie*
zwiazane z niczym (patrz ->[2]).
Niemniej w prehistorii szkoły *były* różne.
A komputery mogły adresować różne dziwne długości "miejsca
w pamięci", z częściej spotykanych :) 4,6,8,12...
I teraz komputerek adresował np. "kawałki po 6 bitów"; popatrz,
wtedy opis "10 znaków tekstu zapisujemy na 7 i 1/2 bajtu
w 10 kolejnych komórkach pamięci" byłby... nienaturalny.
I owszem - *używano* "bajt=jednostka adresowa".
Dla porządku: o ile pamiętam to taka ODRA (-->"niekoniecznie
autoryzowana licencją replika komputerów ICL") mogła adresować
dane *zarówno* po 6 jak i po 8 bitów (korekta, jeśli tylko
przetwarzać a nie adresować - mile widziana).
I owszem, tą metodą ODRA miała SŁOWO o długości 24-bity
(zawsze !) które składało się (w zależności od użytej
operacji) z 3 6-bitowych lub 4 8-bitowych... czego ??
No, czego ???? ! -:) Na takim 8-bitowym dało się zapisać
ze dwa ZNAKI BCD, dla porządku, ale (tak jak w i86) ZNAKÓW
adresować już się nie da. Oczywiście - dawało się zapisać
po 1 znaku dalekopisowym (5 bitów) na tym "czymś" zarówno
6- jak i 8-bitowym, do ASCII (7 bit) trzeba "dłuższego"...
czego ?? ;)
Wiem, marudzę zaszłościami historycznymi.
Niewykluczone, że jeszcze kilku Jacków D. (pozdrowienia :)!)
a na podobnej zasadzie jak dziś powszechnie bajt=8 bitów
(i *nie* używa się w innym znaczeniu) hacker zostanie
crackerem z definicji.
Biednych userów z prehistorii jednak się czepiać nie należy,
fakt że z opisu wynika iż gość rzeczywiście pomylił SŁOWO
(ODRA: 24 bity) z bajtem, ale... wiedział że gdzieś dzwonią :)
[2]
I obiecany koniec: procesor ALPHA adresuje z definicji
*tylko* komórki pamięci po 64-bit. Powszechnie stosowany
"bajt po 8 bitów" *nie* da się zaadresować.
Żeby zapisać 8/16/32-bitowy znak trzeba LOAD->XOR->OR->STORE
(i podobnie z argumentem, "na boku" w innym rejestrze),
co jest powodem że 32-bitowe Windows mają wydajność
taką sobie (na Alphie).
RAM dla Alphy podaje się jednak w MB/GB "po 8 bitów", bo
jest to *ten sam* (fizycznie SIMM/DIMM) RAM co dla i86 :)
"Bajt" pełni tylko rolę "funta[3] danych", bo to ani
jednostka adresowa, ani słowo...
Optuję za zakazem używania nazwy "bajt", bo [->3] nie
jest ani dziesiętne ("dekabit pamięci poproszę" :] :> !)
ani ISO... ! No i 512Mb brzmi poważniej niż 64MB
-:))
Oczywiście, programy przeniesione z 32-bitowego VAXa
nadal używaja określenia "WORD" (słowo) na dwa 8-bitowe
bajty (tu mi kaktus... jak to ma coś wspólnego a architekturą
owego zasłużonego CISCa), LONGWORD na 4 bajty itp.
Programy pisane na nowo jakoś też się nie różnią. Nijak.
A jeśli Merced się przyjmie - to jak będzie ?
SŁOWO również zaczyna pełnić rolę "jakiejś miary" -
jest to tym razem cetnar niemetryczny :], tak wiele
zaczyna mieć wspólnego z architekturą procesora.
A tak prosto kiedyś było... (tylko programów się nie
przenosiło tak często z maszyn 12-bit na 16-bit !)
Ile adresuje Motorola, że z ciekawości spytam (nie pamietam !) ?
>+ Pozdrowienia,
Wzajemnie -:)
Gotfryd
-- Gotfryd Smolik, PTH Stanpol Zabrze. Pilne listy na gs_at_stanpol.zabrze.pl, nt. VMS: gotfryd_at_stanpol.zabrze.pl
To archiwum zostało wygenerowane przez hypermail 2.1.7 : Wed 19 May 2004 - 16:43:38 MET DST