From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, HTML_MESSAGE,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE, T_KAM_HTML_FONT_INVALID,URIBL_SBL_A autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 20819 invoked from network); 3 Feb 2021 14:44:55 -0000 Received: from minnie.tuhs.org (45.79.103.53) by inbox.vuxu.org with ESMTPUTF8; 3 Feb 2021 14:44:55 -0000 Received: by minnie.tuhs.org (Postfix, from userid 112) id 0DB589BA45; Thu, 4 Feb 2021 00:44:54 +1000 (AEST) Received: from minnie.tuhs.org (localhost [127.0.0.1]) by minnie.tuhs.org (Postfix) with ESMTP id A8CA09BA43; Thu, 4 Feb 2021 00:44:12 +1000 (AEST) Authentication-Results: minnie.tuhs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=ccc.com header.i=@ccc.com header.b="gmSg6yXU"; dkim-atps=neutral Received: by minnie.tuhs.org (Postfix, from userid 112) id 2D0F09BA40; Thu, 4 Feb 2021 00:44:09 +1000 (AEST) Received: from mail-qv1-f51.google.com (mail-qv1-f51.google.com [209.85.219.51]) by minnie.tuhs.org (Postfix) with ESMTPS id 1E2829BA40 for ; Thu, 4 Feb 2021 00:44:08 +1000 (AEST) Received: by mail-qv1-f51.google.com with SMTP id 2so56930qvd.0 for ; Wed, 03 Feb 2021 06:44:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ccc.com; s=google; h=mime-version:from:date:message-id:subject:to:cc; bh=uedESY88EtSQugGyVeOyJQ7sbm0gZ8nw8jPjEPd0Qkw=; b=gmSg6yXUzLUDMFzcVScAf+lARZDRMjtBIJG3WJcNdokdKrUUk1PhJ/Opt6bhDZCmS8 FuzOMKYujID0aRbI8RsB7Ivqld1KRj0GmXsxjqprQYfINK4CFp3Tir+cL4ozNxUDpcZb 0x5pLGrc73Zpdc7h2w3p2bRBVIqZ+oWM3Cf4w= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=uedESY88EtSQugGyVeOyJQ7sbm0gZ8nw8jPjEPd0Qkw=; b=kRrbaJA14CpJgSiH+O4bjIsmMAIRTQKjLOZo0+NBa9OYgAd59m852k5K39gzhBL8nH llPhX249Y2EKqUYQ+FsDkgIih/JQv7plH/k/k1J/QdHolCCxHIF9gpQ1C2iBCSjVxcAY jepZlBOvugwfho/2NP6EyaJ6xe7d4seSaLy4aSt3pN5RpayErDg7A8hsThCG5OHEUXZF FAtaYImV7oVUBNGFjmVrJLR9osyRVJ/QjPj40/YeK8pRHb8sa0wtswJuVgYP89KeQ77N PICAlHtvwJyFUes9P+aSAoawEpgERSQ+XaZJKPwY9JBc1kFwpq/dQVt+hJLTbJZdKss7 FaZQ== X-Gm-Message-State: AOAM531gtuaZTxYPOKOGxOSjgKRUR3WT10fPe86i0Kl5gHxslyzGsXVX lb3OBwEdDVZL6OW64YYgrl+FaQEHNwwMlva9etZLGg== X-Google-Smtp-Source: ABdhPJzz2IH1sWrdBYufYsIFE0ba7YXSgyzqpuzKP0Ek74JXjpLckT6rFUX5G67IK5rEUyBOqO/VfobjETMgOrS+8lo= X-Received: by 2002:a0c:b66c:: with SMTP id q44mr2841445qvf.3.1612363446597; Wed, 03 Feb 2021 06:44:06 -0800 (PST) MIME-Version: 1.0 From: Clem Cole Date: Wed, 3 Feb 2021 09:43:40 -0500 Message-ID: To: Peter Jeremy Content-Type: multipart/alternative; boundary="0000000000007bd20a05ba6f9e96" Subject: Re: [TUHS] for now [COFF] to follow up - why a byte is 8-bits X-BeenThere: tuhs@minnie.tuhs.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: The Unix Heritage Society mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: The Eunuchs Hysterical Society , Computer Old Farts Followers Errors-To: tuhs-bounces@minnie.tuhs.org Sender: "TUHS" --0000000000007bd20a05ba6f9e96 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I will ask Warren's indulgence here - as this probably should be continued in COFF, which I have CC'ed but since was asked in TUHS I will answer On Wed, Feb 3, 2021 at 6:28 AM Peter Jeremy via TUHS wrote: > I'm not sure that 16 (or any other 2^n) bits is that obvious up front. > Does anyone know why the computer industry wound up standardising on > 8-bit bytes? > Well, 'standardizing' is a little strong. Check out my QUORA answer: How many bits are there in a byte and What is a bit? Why are 8 bits considered as 1 byte? Why not 7 bit or 9 bit? for my details but the 8-bit part of the tail is here (cribbed from those posts): The Industry followed IBM with the S/360.The story of why a byte is 8- bits for the S/360 is one of my favorites since the number of bits in a byte is defined for each computer architecture. Simply put, Fred Brooks (who lead the IBM System 360 project) overruled the chief hardware designer, Gene Amdahl, and told him to make things power of two to make it easier on the SW writers. Amdahl famously thought it was a waste of hardware, but Brooks had the final authority. My friend Russ Robeleon, who was the lead HW guy on the 360/50 and later the ASP (*a.k.a.* project X) who was in the room as it were, tells his yarn this way: You need to remember that the 360 was designed to be IBM's first *ASCII machine*, (not EBCDIC as it ended up - a different story)[1] Amdahl was planning for a word size to be 24-bits and the byte size to be 7-bits for cost reasons. Fred kept throwing him out of his office and told him not to come back =E2=80=9Cuntil a byte and word are powers of two, as we just don= =E2=80=99t know how to program it otherwise.=E2=80=9D Brooks would eventually relent on the original pointer on the Systems 360 became 24-bits, as long as it was stored in a 32-bit =E2=80=9Cword=E2=80=9D= .[2] As a result, (and to answer your original question) a byte first widely became 8-bit with the IBM=E2=80=99s Systems 360. It should be noted, that it still took some time before an 8-bit byte occurred more widely and in almost all systems as we see it today. Many systems like the DEC PDP-6/10 systems used 5, 7-bit bytes packed into a 36-bit word (with a single bit leftover) for a long time. I believe that the real widespread use of the 8-bit byte did not really occur until the rise of the minis such as the PDP-11 and the DG Nova in the late 1960s/early 1970s and eventually the mid-1970s=E2=80=99 microprocessors suc= h as 8080/Z80/6502. Clem [1] While IBM did lead the effort to create ASCII, and System 360 actually supported ASCII in hardware, but because the software was so late, IBM marketing decided not the switch from BCD and instead used EBCDIC (their own code). Most IBM software was released using that code for the System 360/370 over the years. It was not until IBM released their Series 1 minicomputer in the late 1970s that IBM finally supported an ASCII-based system as the natural code for the software, although it had a lot of support for EBCDIC as they were selling them to interface to their =E2=80=98Mainframe=E2=80=99 products. [2] Gordon Bell would later observe that those two choices (32-bit word and 8-bit byte) were what made the IBM System 360 architecture last in the market, as neither would have been =E2=80=98fixable=E2=80=99 later. --0000000000007bd20a05ba6f9e96 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I will ask War= ren's indulgence here - as this probably should be continued in COFF, w= hich I have CC'ed but since was asked in TUHS I will answer

On Wed, Feb 3, 2021= at 6:28 AM Peter Jeremy via TUHS <tuhs@minnie.tuhs.org> wrote:
I'm not sure that= 16 (or any other 2^n) bits is that obvious up front.
Does anyone know why the computer industry wound up standardising on
8-bit bytes?


<= font color=3D"#0000ff">Well, 'standardizing' is a little strong.=C2= =A0 Check out my QUORA answer:=C2=A0How many bits = are there in a byte and=C2=A0What is a bit? Why are 8 bits considered as 1 byte? Why not 7 bit or= 9 bit?=C2=A0 for my details but the 8-bit part of the tail is here (cr= ibbed from those posts):

The Indu= stry followed IBM with the S/360.The story of why a byte is=C2=A08- bits for the S/360=C2=A0is one of my favorites since the=C2=A0number of bits in a byte is defined for each comput= er architecture. Simply put,=C2=A0Fred Brooks (who le= ad the IBM System 360 project) overruled the chief hardware desi= gner, Gene Amdahl, and told him to make things power of two to make it easi= er on the SW writers. Amdahl famously thought it was a waste of hardware, b= ut Brooks had the final authority.=C2=A0

My friend Russ Robeleo= n, who was the lead HW guy on the 360/50 and later the ASP (a.k.a. p= roject X) who was in the room as it were, tells his yarn this way:=C2= =A0 You need to remember that the 360 was designed to be IBM's f= irst ASCII machine, (not EBCDIC as it ended up - a differ= ent story)[1]=C2=A0Amdahl was planning for a word size to be 24-bits and the by= te=C2=A0size to be 7-bits for cost reasons. Fred kept throwing him out of= =C2=A0his office and told him not to come back =E2=80=9Cuntil a byte and wo= rd are=C2=A0powers of two, as we just don=E2=80=99t know how to program it = otherwise.=E2=80=9D=C2=A0=C2=A0

Brooks would eventually rel= ent on the original pointer on the Systems 360 became 24-bits, as long as i= t was stored in a 32-bit =E2=80=9Cword=E2=80=9D.[2] As a result,= (and to answer your original question) a byte first widely became 8-bit wi= th the IBM=E2=80=99s Systems 360.

It should be noted, that it still took= some time before an 8-bit byte occurred more widely and in almost all syst= ems as we see it today. Many systems like the DEC PDP-6/10 systems used 5, = 7-bit bytes packed into a 36-bit word (with a single bit leftover) for a lo= ng time. I believe that the real widespread use of the 8-bit byte did not r= eally occur until the rise of the minis such as the PDP-11 and the DG Nova = in the late 1960s/early 1970s and eventually the mid-1970s=E2=80=99 micropr= ocessors such as 8080/Z80/6502.

Clem


= [1] While IBM did l= ead the effort to create ASCII, and System 360 actually supported ASCII in = hardware, but because the software was so late, IBM marketing decided not t= he switch from BCD and instead used EBCDIC (their own code). Most IBM softw= are was released using that code for the System 360/370 over the years. It = was not until IBM released their=C2=A0Series 1=C2=A0minicompu= ter in the late 1970s that IBM finally supported an ASCII-based system as t= he natural code for the software, although it had a lot of support for EBCD= IC as they were selling them to interface to their =E2=80=98Mainframe=E2=80= =99 products.

[2] Gordon Bell would lat= er observe that those two choices (32-bit word and 8-bit byte) were what ma= de the IBM System 360 architecture last in the market, as neither would hav= e been =E2=80=98fixable=E2=80=99 later.

--0000000000007bd20a05ba6f9e96--