Machine Language for Music

Binary numbers allow for the representation of any number using only two digits, 0 and 1.  This piece of music is derived from taking a set of integers, in this case, multiples of 6, and converting these integers into their corresponding binary representation.  For each binary number the 1’s are summed to create an integer which represents its binary counterpart.  For example, the binary number for 12 is, 1100, then this number is summed to the integer 2.  The next step is to generate a corresponding note for each summed integer.

There are many ways to match the number with a musical note. In this case we take a D major scale and let 1 = D, 2 = E, 3 = F#, 4 = G, 5 = A, 6 = B, and 7 = C#.  Notice, in our D major scale, we did not go higher than the integer 7.  To accommodate for numbers greater than 7, the use of mod (7) is incorporated into the program.  For example, if the 1’s summed for the binary number is 8, then 1 ≡ 8 mod (7) , and this binary number would be assigned the note D.  The following diagram demonstrates the first 200 binary numbers represented as summed 1’s ranging from 1 to 7:


Interestingly, it seems that for the first 200 numbers  generated by intervals of 6, the summed binary value of 3 (i.e. F#) dominates.  The following represent the distribution of the 200 binary numbers as they are produced from 6 on up to 1200 (i.e. 6*200):


This graph is quite informative, it tells us the envelope of the piece of music.

The note duration is calculated by calculating if adjacent notes are the same.  For example if the binary sequences are producing two E’s in a row then we will assign the E with a 1/8 note duration.   Here is the corresponding piece called, Machine Language V:



Please enjoy listening to this piece.  There is quite a bit you can do to modify this piece of music, for instance, it would be interesting to add some chord structure into this envelope to build up a more complex harmony.  Or use this sequence to build up a counterpoint melody, either above or below.

Leave a Reply

Your email address will not be published. Required fields are marked *