O'Reilly logo

Learning Computer Architecture with Raspberry Pi by Ben Everard, Tim Mamtora, Ralph Roberts, Jeffrey Duntemann, Eben Upton

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 5

Programming

COMPUTER HARDWARE AND computer software are traditionally considered two separate continents on Planet Computing. The term “computer architecture” usually means hardware architecture, to the extent that a great many university-level computer architecture books don’t cover programming at all, much less cover the higher level discipline of software architecture and design.

This may be a mistake, especially for pre-university students who have had no formal instruction in either hardware or programming. Separating the study of hardware and software into two disciplines is a convenience only. Anyone who has a serious interest in computing needs to study both. It’s too glib to say that software wouldn’t exist without hardware. The truth is that modern hardware requires software to design and manufacture it, and, more to the point, all computers (which are hardware) require software to make them operative and useful.

Keep in mind that this book is primarily about hardware. Teaching programming using specific languages and tools is best done in separate books, many of which already exist, especially for Python, which is in some sense the “default” language for the Raspberry Pi. What we’re going to do in this chapter is present a broad picture of the idea of programming, with an eye towards giving you a head start on choosing a programming language and an overall approach to the challenge of building your own software.

Programming from a Height

By now you should ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required