For a long time, circa 1990s, based on my own design issues, the problem of presenting decimal/binary data on numeric displays consisting of more then two digits was always a challenge. All the software and available hardware relating BCD to decimal displays always discussed the designs based on two digits.
The key to my thinking was the development of some algorithm that would be able to convert decimal/binary information to BCD information of any numeric size. Following up on this thinking was to first determine how a decimal number of multiple digits relates via its binary equivalent to the final BCD number.
Once I determined this relationship, then the rest was developing a computer program that could generate this end result. The first program was actually written in Basic. Additional refinements that the program indeed “worked” allowed me to convert the program statements to a more useable form for engineering application to a C/C++ program.
The major challenge was to develop an algorithm, which showed the relationship between decimal/binary to BCD data. The design approach used for the development of the algorithm is still appropriate in today’s design world. The algorithmic design is still applicable for today’s technological development. Wherever presentation of BCD information is required, this design has great relevance.
To Phil: If you click on the authors name, you'll see this same article was first printed in 2004. The link to the code is in that article.
Mark S -October 08, 2008
Where is the link to the source code?
Phil Ouellette -October 06, 2008
Boy, what a Rube Goldberg approach. I thought everyone knew how to do this, just divide by 10 4 times. This approach takes non-binary modulos (hint: needs division) and then divides AGAIN. Neither good software nor good engineering. C-, could do better.
PT -October 03, 2008
Your Comments:
Enter the text from the image below
Please refresh the page if you have trouble reading this text.
Search Electronic Design
Web Seminar
Sponsored By:
Title: Read Pacing: A Performance Enhancing Feature of PCI Express Gen 2 Switch Devices