<< Chapter < Page | Chapter >> Page > |
I recognize that some of you may not be ready for the kind of technical detail that I will provide in this section. If so, feel free to skipahead to the section titled Preview of the Scratch program . Just remember that this material is here waiting for you to come back and studyit when you are ready.
Computer programming is not especially difficult. However, it does require an aptitude for solving problems. In fact, a computer program is usually a modelfor a solution to someone's problem.
If you can learn to program a Digital Video Recorder (DVR), you can probably also learn to program a computer. Of course, a computer is more complicated than a DVR, so there is moreto learn. The important thing is to take the learning process in deliberate steps making certain that you understand each step before moving on to the nextone.
Fortunately, when we write programs using a high-level programming language such as Scratch, much of the hard work is done for us behind thescenes. For example, we don't have to perform the small incremental steps that are required to divide one number by another number.
As programmers, we are more like conductors than musicians. The various parts of the computer represent the musicians. We tell them what to play, and when toplay it, and if we do our job well, we produce a solution to someone's problem.
All computers contain memory of one type or another. When we speak of human memory, we are usually speaking of the things that the human remembers.However, when we speak of computer memory, we are usually speaking of physical devices where data is stored for later retrieval. Most modern computers containmemory of a type that is often referred to as RAM (more on RAM later) .
All data is stored in a computer as numeric values. Computer programs do what they do by executing a series of operations on the numeric data.
Numeric data Even the text in this module is stored as numeric data in your computer. For example, theupper-case character A is commonly represented by the numeric value 65.
The operations that are performed on the numeric data generally consist of calculations and comparisons. It is the order and the pattern of those operations that distinguishes one computerprogram from another.
The reason the memory in most modern computers is called random access memory (RAM) is that it can be accessed in any order. Some types of memory, such as a magnetic tape, can only be accessed in sequential order. (Yes, I did use computers with magnetic tape memory in my younger days during the sixties andseventies.)
Sequential access means that to get a piece of data that is stored deep inside the memory, it is necessary to start at the beginning and examine every piece of data until the correct one is found. Thisis typically a slow process.
Other types of memory, such as disks provide a combination of sequential and random access. For example, the data on a disk is stored in tracks that formconcentric circles on the disk. The individual tracks can be accessed in random order, but the data within a track must be accessed sequentially starting at aspecific point on the track. While faster than magnetic tape, even this process is usually slower than true random access memory.
Notification Switch
Would you like to follow the 'Teaching beginners to code' conversation and receive update notifications?