Re: Pytania..

Autor: Bernard <bernard_at_earth.net>
Data: Thu 07 Apr 2005 - 23:20:53 MET DST
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Message-ID: <4255a2ec$0$1433$f69f905@mamut2.aster.pl>

Andrea wrote:
> Kwestia tego, czy standard jest efektem zwyczaju czy narzuconej normy
> jest mało istotna. Faktem jest, że z innym bajtem raczej się nie
> spotkasz - więc jest standardem.

Spotkasz. Np. w procesorach sygnałowych. Niektóre nie adresują nic
poniżej 16 lub 24 bitów, więc słowo jest równocześnie bajtem 16- lub
24-bitowym.

>>> Z wypowiedzi wynikało, że również dziś może przyjąć inną wartość,
>>> podczas gdy nie może. Ale fakt, kiedyś niekoniecznie tak musiało być.
>>
>> Oczywiście że może. Nawet dzisiaj są maszyny z bajtem 16-bitowym. Odra
>> 1300 miała 6-bitowe bajty, inne maszyny lat 70-tych - 6, 7, 8, 9, 10,
>> 12 lub 13 bitów.
>
> Po pierwsze to te maszyby pracowały ze słowem o tej długości, nie bajtem.

Błąd. ICL1900 ma 24-bitowe słowa i 6-bitowe bajty. Bodajże któryś CDC
miał 39-bitowe słowa i 13-bitowe bajty. Inne maszyny (któreś IBM przed
360) - odpowiednio 36 i 9.

>> W standardzie ANSI C jest stała CHAR_BITS, zdefiniowana dla każdego
>> środowiska. Jak myślisz po co?
>
> Nie jestem programistą, ale zdaje się że CHAR_BITS to definicja długości
> słowa danego środowiska, nie bajtu.

źle Ci się zdaje. sizeof zwraca długość typu w bajtach, a CHAR_BITS
określa długość bajtu w bitach. Typ char (bajt) nie musi mieć 8 bitów.
Received on Thu Apr 7 23:25:21 2005

To archiwum zostało wygenerowane przez hypermail 2.1.8 : Thu 07 Apr 2005 - 23:51:05 MET DST