Jump to content

0 is greater than 0? Why?


Tuu Munz
 Share

You are about to reply to a thread that has been inactive for 1932 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

7 minutes ago, steph Arnott said:

No. But if you believe decimal computers ever existed then that is up to you.

It was, but the number crunching was binary. Base 2 is simplist method because it only relies on an ON/OFF. Even the enigma coder used base 2

Babbage's gears new nothing of binary. Calculations were done entirely in decimal, with carry generated by a single cog on the gear. The dekatron tube is an electrical analog, with the carry pulse generated by bringing the tenth cathode out to its own pin. Binary addition is not possible in such tubes, except by emulation of bits by decimal digits. You must move the logic through ten states to generate a carry. That is not binary.

Again, you are confusing comparison with computation. I do not expect your confusion to abate, so I'll end my participation here.

  • Like 1
Link to comment
Share on other sites

Just now, Madelaine McMasters said:

Babbage's gears new nothing of binary. Calculations were done entirely in decimal, with carry generated by a single cog on the gear. The dekatron tube is an electrical analog, with the carry pulse generated by bringing the tenth cathode out to its own pin. Binary addition is not possible in such tubes, except by emulation of bits by decimal digits. You must move the logic through ten states to generate a carry. That is not binary.

Again, you are confusing comparison with computation. I do not expect your confusion to abate, so I'll end my participation here.

Binary goes back to the first punch card looms of the late 1700s. Which was French. Babbage's engine was built and displayed at the British science museum and the plaque states it was the first programmable binary computer. So i will take their vastely superior expertise over yours thank you very much.

Link to comment
Share on other sites

20 minutes ago, Love Zhaoying said:

I thought some of the old stuff used octal, back then the extra 8th bit was just a “checksum bit”. I’m too lazy to google it because..octal.

Computers like the PDP-8 (Dad had one) bunched binary bits together in groups of three for human convenience. As word size increased, hexadecimal became the favored method of bunching bits. In both cases, the underlying logic was binary, unlike true decimal computers in which storage and compute elements represent ten possible values, either in the position of a ten tooth gear, or the ionized state of a ten cathode electronic sequencer.

Some modern flash memories are effectively octal, storing data in cells that hold one of eight distinct levels of charge. Analog circuitry places and measures the cell charge, converting back and forth between the multilevel representation and multiple binary bits. I would not call such memories "octal", as the multi-level storage is used to support an otherwise binary system.

Link to comment
Share on other sites

13 minutes ago, Madelaine McMasters said:

Computers like the PDP-8 (Dad had one) bunched binary bits together in groups of three for human convenience. As word size increased, hexadecimal became the favored method of bunching bits. In both cases, the underlying logic was binary, unlike true decimal computers in which storage and compute elements represent ten possible values, either in the position of a ten tooth gear, or the ionized state of a ten cathode electronic sequencer.

Some modern flash memories are effectively octal, storing data in cells that hold one of eight distinct levels of charge. Analog circuitry places and measures the cell charge, converting back and forth between the multilevel representation and multiple binary bits. I would not call such memories "octal", as the multi-level storage is used to support an otherwise binary system.

Not binary: Nixie Tubes

38EE8EB1-C9B4-4E26-94CD-94DC3C01CABF.jpeg

Link to comment
Share on other sites

1 hour ago, Love Zhaoying said:

Yep, octal!

https://en.wikipedia.org/wiki/Octal#In_computers

*Edit* Yes, I know they really use binary. But I found my answer and it directly related to your dad’s PDP-8.

The PDP-8 really did use binary, but computers like the IBM 1620 didn't. Although numbers were passed around and stored as BCD, the arithmetic hardware was strictly decimal. In such a computer, if you were to add 0111 and 0111 you'd get 0100 and a carry flag. In a four bit binary computer you'd get 1110. One can make the claim that the IBM 1620 is binary, not decimal, but the moment you attempt to accept numbers in non-decimal format, and produce results in non-decimal format, you're going to have to get out a calendar to time your results. Other base systems must be emulated, in decimal.

In the ENIAC and Babbage's engines, the computing elements and data store are truly natively decimal. You cannot observe the internal state of such machines in binary.

The Nixie tubes you mentioned are indeed decimal, but they are also (AFAIK) only used as output devices. The dekatron tube could be used for display, computation, and storage. I love Nixie tubes, but if you've ever watched dekatrons do their thing, you might fall in love all over again...

ETA: Here's the ENIAC's decade ring counter, which was the basis for the 20 accumulators in which numbers were computed and stored.

image.png.be11c9c1026b33dedab356c59f196195.png

Like Babbage's gears and the dekatron, this counter operates in decimal. There is a clock input on the left. Each position of the ring is maintained by two vacuum tubes, and is observable via the "static outputs". In this implementation of a decimal counter, you can electronically observe the state at any time. In a dekatron you can visually examine the state by just looking at the pretty glow, but you must clock the thing around to generate a carry pulse to know what state it's in electrically.

There is no main memory as in modern computers, all data is held in the 20 accumulators.

Edited by Madelaine McMasters
  • Like 1
Link to comment
Share on other sites

18 minutes ago, Madelaine McMasters said:

In the ENIAC and Babbage's engines,

My high school computer class almost got to meet Grace Hopper, but she broke her hip before the visit. 

When my dad took me to his office to learn about programming (McDonnel Douglas in the early 70’s), the copy machines had Nixie tubes for counters. I gave up long ago finding the HP model I learned on.

  • Like 1
Link to comment
Share on other sites

33 minutes ago, Madelaine McMasters said:

There is no main memory as in modern computers, all data is held in the 20 accumulators.

Years later, dad took me back to his office and I got to see their mini museum, in which they had a rotating drum memory, and a physical “core” memory.

  • Like 1
Link to comment
Share on other sites

1 minute ago, Love Zhaoying said:

Years later, dad took me back to his office and I got to see their mini museum, in which they had a rotating drum memory, and a physical “core” memory.

I have a magnetic core memory somewhere in the attic.

15 minutes ago, Love Zhaoying said:

My high school computer class almost got to meet Grace Hopper, but she broke her hip before the visit. 

When my dad took me to his office to learn about programming (McDonnel Douglas in the early 70’s), the copy machines had Nixie tubes for counters. I gave up long ago finding the HP model I learned on.

I love watching videos of Dr. Hopper handing out nanoseconds...

She used the speed of light in a vacuum as her metric, which is faster than the speed of an electrical signal in a wire. On the kinds of circuit boards you find in modern gadgets, signals travel at about 0.5C. That was fortunate for me when I decided to make a nanosecond, a microsecond, and a millisecond. You too can purchase this collection for display on your own dining room table...

A nanosecond is easy, just find a six inch long piece of wire.

A microsecond is easy, too. Buy this 625 foot spool... https://www.amazon.com/Remington-Industries-32SNSP-125-Enameled-Diameter/dp/B076CHJ3DT/ref=sr_1_5?s=industrial&ie=UTF8&qid=1547074225&sr=1-5&keywords=32+awg+wire

A millisecond is more expensive, but still achievable. Buy this... https://www.remingtonindustries.com/magnet-wire/magnet-wire-44-awg-enameled-copper-5-spool-sizes/
Under "Options" pick the 10 pound spool, which is 151 miles long!

And this brings me back to your mention of "memory". Some computers actually stored data in a recirculating signal on a long wire or by propagating sound through materials, where you need a million times less length to store the same number of bits. The speed of sound is about 1ft/ms.

I have pushed signals into my little spool of wire and watched them come out the other end one microsecond later. The world is a wonderful place.

  • Like 1
Link to comment
Share on other sites

4 minutes ago, Madelaine McMasters said:

And this brings me back to your mention of "memory". Some computers actually stored data in a recirculating signal on a long wire or by propagating sound through materials, where you need a million times less length to store the same number of bits. The speed of sound is about 1ft/ms.

No drum?

Link to comment
Share on other sites

9 hours ago, Madelaine McMasters said:

Though Liebniz invented the binary arithmetic system now used in digital computers, the first computers were decimal. Babbage's engines used ten position gears to store and calculate. One of the earliest and most famous electronic computers was the ENIAC. It was decimal, using dekatron tubes to store and compute.

When Dad was in engineering school, he used an IBM 1620 computer. It was decimal. By the time I was old enough to remember such things, it had been retired to the university's museum, where it played primitive tunes through a speaker connected to some internal circuit node. So, I have seen and touched a decimal computer.

The first binary computer was Konrad Zuse's Z1, which arrived 100 years after Babbage's early efforts.

For a more complete history of decimal computers: https://en.wikipedia.org/wiki/Decimal_computer

That's cool! I don't remember if I'd heard about those computers ... my memory is wearing out and replacement parts aren't available yet. I do remember using analog computers in college. Those were lots of fun.

Link to comment
Share on other sites

35 minutes ago, Parhelion Palou said:

That's cool! I don't remember if I'd heard about those computers ... my memory is wearing out and replacement parts aren't available yet. I do remember using analog computers in college. Those were lots of fun.

I don't know if I'll ever get around to it, but I'd love to noodle with a dekatron tube. Although Dad always had computers in his office and shop, he was a mechanical engineer. So I have fond memories of building simple mechanical logic gates. The modern maker movement has resurrected this and people are even making them out of legos. Imagine how thrilling it must have been for Babbage to see his first engines turn over.

I miss the days when computers had blinking lights and spinning bits (paper tape reels!) and seemed ever so mysterious. I think I've mentioned that I still encounter paper dots around the house during remodeling.

Edited by Madelaine McMasters
  • Thanks 1
Link to comment
Share on other sites

13 hours ago, Madelaine McMasters said:

And this brings me back to your mention of "memory". Some computers actually stored data in a recirculating signal on a long wire or by propagating sound through materials, where you need a million times less length to store the same number of bits. The speed of sound is about 1ft/ms.

CSIRAC (1949-1962) used mercury acoustic delay lines. 150cm (4.9213 feet) giving a 960μs delay

Quote

CSIRAC’s main memory design allowed for thirty-two acoustic mercury delay lines, each with the capacity to store 16 words (of twenty bits); this was later upgraded to 32 words when a method of interleaving was devised. A total of 1024 words of storage was therefore possible but only a maximum of 768 were ever available!

Some of the CSIRAC mercury tubes were about 10mm in diameter and 150cm long. A modulated pulse was generated by a transducer at one end of the tube, and 960 microseconds later it arrived at the other end of the tube where it was received by another transducer. The modulated pulse was detected, amplified, re-shaped and re-generated, being fed back into the beginning of the tube.

https://collections.museumvictoria.com.au/items/406411 has some photos of the box they went in.

Edited by Callum Meriman
Link to comment
Share on other sites

Somebody's already mentioned that you do maths in Fortan, which isn''t strictly true, but the method I've used for years (and it was insisted upon by the standards I was having to work to) was to have a declared constant MIN_VALUE, and the test for a float being Zero was IF( ABS(testVal) .LT. MINVAL) instead of IF(testVal .EQ. 0.0). And you can do that in almost any language, for example if (llFabs(testVal) < MIN_VALUE) ... You can probably even do it in Klingon

Probably way too far back on topic for this thread :)

Link to comment
Share on other sites

1 hour ago, Profaitchikenz Haiku said:

Somebody's already mentioned that you do maths in Fortan, which isn''t strictly true, but the method I've used for years (and it was insisted upon by the standards I was having to work to) was to have a declared constant MIN_VALUE, and the test for a float being Zero was IF( ABS(testVal) .LT. MINVAL) instead of IF(testVal .EQ. 0.0). And you can do that in almost any language, for example if (llFabs(testVal) < MIN_VALUE) ... You can probably even do it in Klingon

Probably way too far back on topic for this thread :)

Reality check in regards to the OPs statement. This is SL and  LSL does not need to be stupidly accurate. Simply chop off the end to return a three decimal  float.

Link to comment
Share on other sites

1 hour ago, Profaitchikenz Haiku said:

Somebody's already mentioned that you do maths in Fortan, which isn''t strictly true, but the method I've used for years (and it was insisted upon by the standards I was having to work to) was to have a declared constant MIN_VALUE, and the test for a float being Zero was IF( ABS(testVal) .LT. MINVAL) instead of IF(testVal .EQ. 0.0). And you can do that in almost any language, for example if (llFabs(testVal) < MIN_VALUE) ... You can probably even do it in Klingon

Probably way too far back on topic for this thread :)

I've used MIN_VALUE as well, but whether it works depends on definition and context. I did a fair bit of digital signal processing over my career, and rounding/truncation errors (whether in fixed or floating point math) were a constant concern. In a 32 bit floating point system, if you add 0.001 to 0.001, the result will be 0.002±.000001 or something like that. If you add .001 to 1,000,000,000, the result will be 1,000,000,000 exactly. Your MIN_VALUE must be appropriate for the range of numbers you're working with, and the precision of your system.

This is a particularly worrisome thing in Digital Signal Processing (DSP), where the results of previous calculations may be carried forward a great distance. It's not uncommon to perform math on sequences of data many thousands of samples long, and the accumulation of rounding errors can wreck an algorithm. This field of worry is called "finite word length effects" and every DSP engineer must understand it. It's becoming less of an issue in modern processors with 64 or 80 bit floating point, where the precision of calculations exceeds what's necessary to accurately model reality, but there are still some dark corners of mathematics that require exact answers. Wolfram Mathematica and other toolkits have "arbitrary precision" math.

I can't find a reference at the moment, but I recall that either Maple or MathCAD (and perhaps Mathematica) also had a mode in which perfect precision was maintained by expressing irrational numbers (for which infinite precision is required) as ratios of rational numbers. So 1/3 would be 1/3, not 0.3333...

The drift of SL prims, as I recall, is attributed to the accumulation of floating point errors.

 

Edited by Madelaine McMasters
Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 1932 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...