{'fraction_non_alphanumeric': 0.007331378299120235, 'fraction_numerical': 0.0, 'mean_word_length': 5.26605504587156, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Microprogramming as a pedagogical tool in teaching computer science

Microprogramming has emerged in the past five years as a major control system design technique for digital systems of all types.
 Starting with a brief review of the basic concepts of microprogramming, its use as a pedagogical tool and role in a computer science curriculum will be considered. This will be followed by a description of a course on microprogramming taught by the author at George Washington University including an example based upon a microprogrammed hardware simulator. Some observations and conclusions on the role of microprogramming within the computer science curriculum concludes the paper.