12
$\begingroup$

I am looking forward to create anthropomorphic dragons/lizards with 8 fingers (3 + thumb). As they base their number system on it, the powers of 2 are recurrent.

Would this grant any advantage for the understanding of electronics and the math behind them? Would they create machines faster than humans?

$\endgroup$
16
  • 3
    $\begingroup$ There's no guarantee that electronics would be binary, or that computation would even require electronics. Babbage almost succeeded at steampunk computation (which was going to be base-10). Many many design decisions were laid down early that could have been made differently and everything after is just based off of those. $\endgroup$
    – John O
    Jul 23, 2020 at 16:09
  • 4
    $\begingroup$ @John - If they used analog computers first (as we did) then digits don't matter. However once you decide to have on-off logic (the easiest sort to implement), binary or trinary is inevitable. en.wikipedia.org/wiki/Ternary_computer $\endgroup$ Jul 23, 2020 at 16:16
  • 2
    $\begingroup$ @chasly-reinstateMonica Binary isn't inevitable. It just looks like it with hindsight. Babbage's computer wasn't analog at all... and it was going to be base-10. Even in electronics, other number bases are possible... and if the species decides to go with those first, they soon gain the expertise to take it further, and they'd be saying things like "of course trinary is inevitable!". $\endgroup$
    – John O
    Jul 23, 2020 at 16:20
  • 2
    $\begingroup$ @Renan Other bases are possible through hardware. They're just not practical once you've got 80 years of binary electronics experience. But then, some species that did trinary would probably say the same thing about binary. $\endgroup$
    – John O
    Jul 23, 2020 at 16:40
  • 2
    $\begingroup$ @cowlinator: Every single numerate person is able to do mental calculations in octal if they need to for their work. It's not a superhuman feat, it's not even hard to learn. $\endgroup$
    – AlexP
    Jul 24, 2020 at 2:00

8 Answers 8

39
$\begingroup$

Probably not

While it is true that a Base 8 system would mean that the general public would be able to work with programming numbers and hexadecimal better, anyone who uses those number systems with any frequency very quickly acclimates to the various base systems within any programming language. There are programmers who can just offhand convert numbers to bit to hexadecimal with barely any inconvenience. So, while the general population gets a slight advantage, the part that actually works within computer sciences would be just as capable as the humans who work within our computer science fields.

$\endgroup$
8
  • 5
    $\begingroup$ This goes contrary to my own answer but is a very strong point that I can agree with, +1. I think the most hardcore programmers wouldn't feel a difference, but the dragons might have a larger programming workforce. $\endgroup$ Jul 23, 2020 at 16:33
  • 2
    $\begingroup$ +1 on having a larger programming workforce, which is a distinct advantage. $\endgroup$
    – cowlinator
    Jul 24, 2020 at 0:04
  • 14
    $\begingroup$ Most of the "programming workforce" today doesn't use non-decimal numbers with any regularity. They just tell the computer numbers in base-10 digits and get them back in same, with the computer handling all the conversions. Base swapping is a tiny performance hit in theory but not what you'd call game-changing. $\endgroup$
    – Cadence
    Jul 24, 2020 at 4:51
  • 4
    $\begingroup$ Actually, perhaps the biggest pain in base swapping these days is the impedance mismatch between binary floating point numbers and decimal floating point numbers. For example, 0.2 has no exact representation in most computers. With octal, you wouldn't have that problem... but I also don't think that would be a "game changer". $\endgroup$
    – Matthew
    Jul 24, 2020 at 14:47
  • 3
    $\begingroup$ to do a quick conversion, 0.2 in octal is 2 / 8 (because base 8), which would be trivial to write out in floating-point form: 2 * 2 ^ -3. However, this isn't really helpful - you're always going to have impossible-to-represent numbers, you're always going to have fuzzy results with a (calculatable) amount of error. It would not be an advantage to count in octal, or at least not a big enough one to change things. $\endgroup$ Jul 24, 2020 at 15:34
16
$\begingroup$

As a computer programmer and electronic engineer I can say the answer is no.

For a fairly short period in our history there was some advantage to being familiar with base 8. When computers were new and not very powerful and more importantly when software development often involved understanding the internal workings there was an advantage to base 8 because of its relation to base 2, the fundamental base for computing due to the laws of physics.

But that time period is already over. Most people programming or using computers don't use binary or octal (base 8), or if they do not to an extent where being familiar with it would be a significant help.

I've mastered base 2 and base 16 well enough that I can work right down at that low level, it wasn't particularly hard and my job is quite specialist.

$\endgroup$
1
  • $\begingroup$ Modular arithmetic with higher powers of two is still fairly important, as bignums are much more expensive. Being able to choose big enough nums trumps that fairly often though. $\endgroup$ Jul 24, 2020 at 15:05
11
$\begingroup$

Actually they might be "disadvantaged" in mathematics pre-electronics.. And by quite a lot.

Using base 10 means that you have the prime factors 2 & 5. This in turn means that any vision by a multiple of those prime factors [1/2, 1/4 = 1/(2*2), 1/5] can be written in "decimal" notation without any rounding. (Compare that to 1/3 which cannot).

Base 8 has only prime factor "2" - so 1/2, 1/4 etc can be written without rounding. But a number like "0.2" or "0.1", which can be done easily in base 10, cannot be written in base 8.

This is quite a big disadvantage pre-computer age. So much so that even for us humans there have been societies (babylonians) which actually did not use base 10. But opted for "base 30" instead (prime factors 2, 3 and 5). Being able to write out fractions without rounding is just that much an advantage.

And we still see artifacts of that in say degrees for a circle, it allows for more "integer" angles.

This is offset once you start going into formal sciences and work with floating points/errors. But similarly the advantage of easier conversion to binary is negligible: it's almost never done by hand other than for trivial stuff.

$\endgroup$
13
  • 2
    $\begingroup$ Is "This in turn means that any vision by a multiple" a misspelling or you mean something special? Note that if you subscribe to this idea using base 12 is probably the most plausible - you can get 1/2, 1/3, 1/4 and 1/6 of "10" (base 12) to be whole number vs. just 1/2 and 1/5 to be whole number of 10 (base 10). $\endgroup$ Jul 24, 2020 at 5:27
  • 2
    $\begingroup$ I'm not sure I understand this answer. 8 has 2 factors (2 and 4) and 10 has 2 factors (2 and 5). Why does them being prime or not really matter? (You pull out representing our 0.1 as being difficult for base 8, but isnt that very base-10 centric, there are plenty of numbers it's hard to represent in base 10). Obviously this argument shows why base-7 would be a nightmare, but I'm less convinced about base-8 $\endgroup$ Jul 24, 2020 at 7:01
  • $\begingroup$ @RichardTingle 8 has only one prime factor. A number system with a base with more prime factors has easier conversion between fractions and "decimals" (e.g. 1/3 cannot be represented with a finite decimal in base 10 (1/3=0.33333333...), but if you are in base 3 it is simply 1/3=0.1). $\endgroup$
    – BBeast
    Jul 24, 2020 at 7:09
  • $\begingroup$ This answer implies that the optimal base pre-computer is one with as many prime factors as possible. Although I imagine that at some point the inherent complexity of the numerals would outweigh the benefits of "decimal"-fraction conversion. $\endgroup$
    – BBeast
    Jul 24, 2020 at 7:12
  • 1
    $\begingroup$ Its your answer, so ultimately its up to you, but I think its a worse answer for it $\endgroup$ Jul 25, 2020 at 12:34
5
$\begingroup$

At this moment I imagine many of my peers here at the site might be tempted to close this question as off-topic.

I'll just say that I spent a number of years in college for a bachelor degree in Computer Science. I saw time and again people dropping out of CS because they could not wrap their heads around it. Many were the challenges, and understanding math in bases other than 10 was a huge factor. I personally know a couple handful people who failed 2nd semester subjects because they could not understand how $1 + 1 = 10$. And they were counting on their fingers. Seriously. To this day I believe that if you cannot read time on a clock like this, you cannot get a degree in CS:

A binary clock

A sentient species with an octal number base might probably have a much easier time converting to binary and hexadecimal, which are common in low level programming (some the hardest forms of programming come into this category).

I propost a challenge here, watch this video starting on the 2:22 mark: https://www.youtube.com/watch?v=DfCJgC2zezw&t=142s

Did it instantly make sense to you? If so, you're probably a Math or CS student or graduate - or you belong to a species with eight fingers with a base 8 numeral system. If you struggle with it for more than two minutes, the good news is that you will probably never have to pay for expensive books about C++.

For clarification: I'm not saying these guys would have an easier time programming in octal. I'm saying they would have an easier time understanding binary and hexadecimal, which is what keeps some people out of math-intensive courses in the area of computing. I'm not implying that when programming you do it all the time.

$\endgroup$
19
  • 11
    $\begingroup$ " failed 2nd semester subjects because they could not understand how 1+1=10" Perhaps they should introduce it in the first semester then - or even make it a pre-requisite. This would be an effective early filter for people who just aren't suited to the subject. $\endgroup$ Jul 23, 2020 at 16:14
  • 28
    $\begingroup$ I think you greatly overestimate the necessity of understanding octal or hex in CS. Or reading a clock like that: I can't (at least without reading the man page), yet I have advanced degrees and a fairly successful career. (Though I admit I still get irritated by people who use octal unnecessarily, as in chmod permissions. $\endgroup$
    – jamesqf
    Jul 23, 2020 at 16:17
  • 8
    $\begingroup$ @Renan 1100 1111 -> 12 15 but if you were from a culture that reads right to left it would be 11 111100 -> 3 56 so really only trivial if the functioning matches your expectations. There are other possible meanings too. We just assume it's a binary watch ... $\endgroup$
    – Gwyn
    Jul 23, 2020 at 17:09
  • 4
    $\begingroup$ Also, 2nd semester college? We did the various bases in high school math, only had a very brief refresher starting Uni. If you pitched up to a college/uni CS class not understanding binary you'd better catch up fast or you were ever so slightly screwed. $\endgroup$
    – Gwyn
    Jul 23, 2020 at 17:17
  • 6
    $\begingroup$ @Renan: EVERYTHING requires a man page :-) Even if it's as simple as "This device displays time as two binary numbers. Filled circles are ones, empty ones are zeros. And you're SOL if you want to use a 24 hour clock." $\endgroup$
    – jamesqf
    Jul 24, 2020 at 3:58
3
$\begingroup$

Mathematics is very abstract. In principle you can choose your own base which fits your system best.

In our every day's life we use a base of 10. Why? Because it is easy to learn. We use 10 fingers for counting. In the old Babylonian days they used a base of 60 (12 joints of the 4 fingers on one hand, counting with the thumb and 5 fingers on the other hand for counting the 'overflows' of 12). Computers use a base of 2, because they only know 'ON' and 'OFF'.

Whats the advantage of a large number of symbols, i.e. a bigger base? Bigger numbers are easier (require less 'space') to write down. 512 just needs 3 digits in a decimal system, but needs 10 digits in binary (10 0000 0000). The disadvantage is you need more symbols (like 60 different when using the babylonian sexagesimal system).

But what about understanding math? Have you ever taken a 'real' lecture on mathematics, like on university level? You will soon understand that 'real' math has little to do with calculations. Calculations - regardless of the base used - yield the same result. In some situations it is easier to use a base of 2, in some it is 10. You can even transform equations (integrals for example) from 'cartesian coordinates' to polar ones, which often results in a more familiar and easier equation.

I'm sure that the numeral system used does not influence how good we or another species understand mathematics or builds machines.

$\endgroup$
1
$\begingroup$

I suspect that dragon 'hands' would provide much more trouble than cultural familiarity with the number system would offset. Claws may be great for battle but for manipulating tiny things are a huge disadvantage.

$\endgroup$
1
  • 1
    $\begingroup$ The question doesn't say anything about the the size, shape, retractibility, or any other details about the dragons' claws. It doesn't even say if they have claws on their hands. It does however state that the dragons are anthropomorphic, and thus their hands are quite likely just about as dexterous as human hands. $\endgroup$
    – 8bittree
    Jul 24, 2020 at 20:15
0
$\begingroup$

With only 8 fingers perhaps their keyboards would be smaller. That would leave more space on their desks for napkins to capture the designs brilliant new ideas.

$\endgroup$
0
$\begingroup$

There would be some advantage, but only marginal and for other reasons.

There was a time in our history when we had computers working in base 10 - in addition to computers working in base 2. Those were marketed as more suitable for business and data processing tasks, as opposed for scientific data crunching (no rounding artifacts when converting to and from base 2).

Fast forward to early microprocessor era - many CPUs featured BCD support on silicon, because it was widely believed the alternate base 10 representation would be useful for exact arithmetic (again, financial calculations, but also faster number conversion for printing etc.).

Then the software caught on, and by today, practically everything is done in software. Even modern x86 BCD is microcoded and thus likely much slower than native silicon implementation could be, but it is just not important anymore, apart for backward compatibility.

So, back to your civilization, there would be a period of time where the equivalent of our decimal computers would not have to be developed, freeing effort and resources for other development. And early CPUs would be marginally cheaper and designed faster, and having less transistors (or equivalently, having additional features while having the same number of transistors).

Note that the question asks about electronics - thus the speculation about the advantages of binary or binary-coded octal for early mechanical computations are off topic.

Also note that the number of fingers is related, but not essential for the number system of the civilization. After all, we humans use remnants of old Babylonian base 60 (clocks), used a parallel base 12 system at least somewhat (dozen, gross, great gross) and there were even languages with base 8 number system. But the Indo-European base 10 won, for reasons unrelated to the number system.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .