Your browser (Internet Explorer 8 or lower) is out of date. It has known security flaws and may not display all features of this and other websites. Learn how to update your browser.



Binary Adder

Mat385 Finite State Machine (Binary Adder)

Andrew E Long
The Binary Adder:

Andy LongSpring, 2020 - Year of Covid-19‚Äč
Having constructed a working example of a finite state machine (FSM), from Gersting's 7th edition (p. 730, Example 29), I decided to create a more useful one -- a binary adder (p. 732). It works!
Subject to these rules:
  1. Your two binary numbers should start off the same length -- pad with zeros if necessary. Call this length L.
  2. Now pad your two binary numbers with three extra 0s at the end; this lets the binary-to-decimal conversion execute.
  3. numbers are entered from ones place (left to right).
  4. In Settings, choose "simulation start" as 1, your "simulation length" as L+2 -- two more than the length of your initial input number vectors. (I wish that the Settings issues could be set without having to explicitly change it each time -- maybe it can, but I don't know how.)
Be attentive to order -- start with 1s place, 2s place, 4s, place, etc., and your output answer will be read in the same order.

To understand why we need three additional inputs of 0s:
  1. For the useless first piece of output -- so n -> n+1
  2. For the possibility of adding two binary numbers and ending up with an additional place we need to force out: 111 + 111 = 0 1 1 1
  3. For the delay in computing the decimal number: it reads the preceding output to compute the decimal value.

Computer Science Mathematics Binary Adder Finite State Machine FSM MAT385

  • 1 year 1 month ago