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.8 required=5.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 27210 invoked from network); 19 Sep 2023 16:22:45 -0000 Received: from minnie.tuhs.org (50.116.15.146) by inbox.vuxu.org with ESMTPUTF8; 19 Sep 2023 16:22:45 -0000 Received: from minnie.tuhs.org (localhost [IPv6:::1]) by minnie.tuhs.org (Postfix) with ESMTP id CCE5B40A48; Wed, 20 Sep 2023 02:22:40 +1000 (AEST) Received: from mail-pj1-x1036.google.com (mail-pj1-x1036.google.com [IPv6:2607:f8b0:4864:20::1036]) by minnie.tuhs.org (Postfix) with ESMTPS id AF0A9409B7 for ; Wed, 20 Sep 2023 02:22:34 +1000 (AEST) Received: by mail-pj1-x1036.google.com with SMTP id 98e67ed59e1d1-274cfc9b049so1728499a91.2 for ; Tue, 19 Sep 2023 09:22:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695140554; x=1695745354; darn=tuhs.org; h=cc:to:subject:message-id:date:from:references:in-reply-to :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=H7GFsf2tYG1AgPcrcaUHMehXCt4rS8lMRKeMkQV/Q+o=; b=Eh5fx/xZ+o8r4YCVsxg5fwI6jek8/WKAI8uIi9quEIbc/W0ANbFNJl7eVFVhRu53rY Th7pqCGmQHj00Mz4PdO8h2sO0XiAb8F4VRptcNMtofwkfuFSEPagRw+unDKMaDc2Q5yD vE9YhjpvpG/+zBKGmgHbixKTcpDRQkmcAiqbGnFyZ6vU0Wwj5Ooh4gRdyCxeSPumPFzh XMTxXX/bXkV9kPtXCAKdkWcqV40iGvhcCp9RWg5EqF6tma0nqFqi0PU41a8HzWXwIjwQ S5zyRoszbwl+gbqB6iCv+0hz2JfEVdT5NJKrZmq6eNHSsA6xuX/uqT5VvuEIzukyo/ID kLKw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695140554; x=1695745354; h=cc:to:subject:message-id:date:from:references:in-reply-to :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=H7GFsf2tYG1AgPcrcaUHMehXCt4rS8lMRKeMkQV/Q+o=; b=Dp2mHnVFj+MPCwBwwJZoXRuNnnttDRlQwKGuSNODlO4fGEqrxMuVngO93h/WBo/P5H xZQ6AWbBm8kuiBOsd5hbgxu9HjoXzZa/p1FTfLhFsTQILXoggR9flqCGcMREmyZVRHVQ 0DmmyPmzSittZNhwk+f/LgQGc10d3OLXWA/N2Ci70AKZxOiXk/fdmGlkcE2XfqoXlyud kW7/s3wLpHYF0Gt9XQ9JRp8sE+1EEwl/VwKI3lktDoQuIxN+B/NOvlwFG3aikQokoy+A OTM3ydvv9Hitcn0ccbbtVfG98wN6NmWwU4ZZLQDm88pTiAvp12bfulqZvl9kdr+rjfbc TC5w== X-Gm-Message-State: AOJu0Yzz2517L6KAUoEBCWS4SQhxtNMxT1ehFux0m4FC3F93phdFWAgu sle59WPPw954kWovgeKXkwJgN5J88fpllIQuMRk= X-Google-Smtp-Source: AGHT+IEKj+pnw7YQDSFt9J3s6yEB26MoAXRCcsELG0BqbJ1JGyo/qSvCBEEHvH21VL+0touCOtnhj7tzm6l9D7YdY+k= X-Received: by 2002:a17:90a:9704:b0:274:748c:9c55 with SMTP id x4-20020a17090a970400b00274748c9c55mr195765pjo.20.1695140553710; Tue, 19 Sep 2023 09:22:33 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a05:6a10:cca6:b0:4e6:21ca:4dee with HTTP; Tue, 19 Sep 2023 09:22:33 -0700 (PDT) In-Reply-To: References: <87246EC9-0AC8-404E-A8DD-508AB046018B@planet.nl> From: Paul Winalski Date: Tue, 19 Sep 2023 12:22:33 -0400 Message-ID: To: Dan Cross Content-Type: text/plain; charset="UTF-8" Message-ID-Hash: IEHTBSV6BPP2BWJXKECRZH3SMQTJW7A5 X-Message-ID-Hash: IEHTBSV6BPP2BWJXKECRZH3SMQTJW7A5 X-MailFrom: paul.winalski@gmail.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Paul Ruizendaal , "tuhs@tuhs.org" X-Mailman-Version: 3.3.6b1 Precedence: list Subject: [TUHS] Re: CRC calculation in the 1980s List-Id: The Unix Heritage Society mailing list Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: On 9/19/23, Dan Cross wrote: (regarding the CRC instruction on VAX) > > I thought that was a general polynomial root finder instruction that > used Horner's Method? Obviously it could be used in CRC calculations, > but I remember it being more general. I also remember reading about it > in the VAX architecture manual and thinking, "wow, > that's...something." VAX had both a CRC instruction and a polynomial instruction. CRC operated on byte strings and did fixed-point calculation. The polynomial instructions (POLYF and POLYD) operated on single-precision (F) or double-precision (D) data. Unfortunately the algorithm used by POLYF and POLYD wasn't very accurate--there were other algorithms that did a better job preserving precision. Anyone doing serious calculations in floating point avoided POLYF and POLYD. These were two more of the instructions that were dropped from the microVAX architecture and emulated by the OS. -Paul W.