In something like C or ASM, the obvious way to do this would be to encode the 3 input bits into an index into an array with 8 items. The value of that array would be Qn.
In Perl that is also possible. However using a hash table representation might be better for more complex situations than this. You can encode the inputs "$CP$EN$Qprev" as a hash key. $Qnext = $table{"$CP$EN$Qprev"}; etc....
In your case, this is a hardware thing that will produce 0,1 for any combination of inputs. When building a software state table, this hash approach allows us to deal with very sparse arrays and also deal specially with the "hey, this shouldn't happen case". Of course in complex hardware state tables, you will have to think about these "hey, this shouldn't happen case" and make sure that your state machine doesn't "dead end" into an infinite loop and so you have to have a better answer than an error message that says "program error"!
Anyway consider a hash table representation.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.