Difference between revisions of "CSC103 Notes, Newer Version"
(→CSC103 How Computers Work--Class Notes (newer version)) |
|||
Line 26: | Line 26: | ||
Understanding how computers work first requires observing that they are the physical implementation of rules of mathematics. So in the first part of this book we introduce simple concepts of logic, and explain how the binary system (where we only have 0 and 1 as digits to express numbers) works. We then explain how electronic switches, such as transistors, can be used to implement simple logic circuits which we call logic gates. Remarkably, these logic gates are all that is needed to perform arithmetic operations, such as addition or subtractions, on binary numbers. | Understanding how computers work first requires observing that they are the physical implementation of rules of mathematics. So in the first part of this book we introduce simple concepts of logic, and explain how the binary system (where we only have 0 and 1 as digits to express numbers) works. We then explain how electronic switches, such as transistors, can be used to implement simple logic circuits which we call logic gates. Remarkably, these logic gates are all that is needed to perform arithmetic operations, such as addition or subtractions, on binary numbers. | ||
+ | |||
+ | This brings us to having a rough, though accurate, unerstanding of how simple hand-held calculators work. They are basically machines that translate decimal numbers into binary numbers, and carry these numbers through different paths through logic circuits to generate the sum, difference or multiplication | ||
At this point, we figure out that an important part of computers and computing as to do with ''codes''. A code is just a system where some symbols are used to represent other symbols. The simplest code we introduce is the one we use to pass from the world of logic where everything is either ''true'' or ''false'' to the world of binary numbers where digits are either ''1'' or ''0''. In this case the code we use is to say that the value ''true'' can also be represented by ''1'', and ''false'' by ''0''. Codes are extremely important in the computer world, as everything at the lowest level is really based on ''1''s and ''0''s, but we organize the information through ''coding'' to represent extremely complex and sophisticated systems. | At this point, we figure out that an important part of computers and computing as to do with ''codes''. A code is just a system where some symbols are used to represent other symbols. The simplest code we introduce is the one we use to pass from the world of logic where everything is either ''true'' or ''false'' to the world of binary numbers where digits are either ''1'' or ''0''. In this case the code we use is to say that the value ''true'' can also be represented by ''1'', and ''false'' by ''0''. Codes are extremely important in the computer world, as everything at the lowest level is really based on ''1''s and ''0''s, but we organize the information through ''coding'' to represent extremely complex and sophisticated systems. | ||
− | + | Our next step is to see how we can use 1s and 0s to represent ''actions'' instead of data. For example, we can use 1 to represent the sum of two numbers, and 0 to represent the subtraction of the second from the first. In this case, if we write 10 1 11, we could mean that we want to add 10 to 11. In turn, writing 11 0 10 would mean subtracting 10 from 11. That is the basis for our exploration of ''machine language'' and ''assembly language''. This is probably the most challenging chapter of this book. It requires a methodical approach to learning the material, and a good attention to details. We use a simple computer simulator to write simple, yet complex, assembly language programs that are the basis of all computer programs written today. Your phone, tablet, or laptop all run applications (''apps'') that are large collection of assembly language instructions. | |
+ | |||
+ | |||
+ | |||
+ | |||
<br /> | <br /> |
Revision as of 14:25, 7 August 2014
--D. Thiebaut (talk) 12:56, 7 August 2014 (EDT)
--© D. Thiebaut 2012, 2013, 2014
Last revised --D. Thiebaut (talk) 08:05, 9 October 2013 (EDT)