<back<

Key terms

A    B    C    D    E    F    G    H    I    J    K    L    M    N    O    P    Q    R    S    T    U    V     W    X    Y    Z   

A
accumulator                                
AND     
arithmetic / logic unit (ALU)
assembler
assembly language
agent
autonomy

back to top of page

B
binary logic
binary operator
Boolean algebra
Boolean expression
Boolean operator
Boolean values
bootstrapping
branching
bus

back to top of page

C
cache
central processing unit (CPU)
clock frequency
clock speed
compiler
compound condition

computer
computing
control instruction
control signals
control unit
currency

back to top of page

D

data
delegation

back to top of page


E

emergence


back to top of page

F
family of processors
fetch/execute cycle
file storage memory
firmware

back to top of page

G

back to top of page

H
hardware
high - level language
human - computer interaction

back to top of page

I
infinite loop
information system
instruction set
integrated chip
integrated circuit
interpreter
identity
information
information loop
interaction

back to top of page

J
JavaScript

back to top of page

K

back to top of page


L
loop body
looping
low - level language

back to top of page

M
machine language
main memory
microchip
microprocessor

back to top of page

N
non - volatile
NOT

back to top of page

O
operand
operating system
operator
OR

back to top of page

P
peripheral / peripheral device
persistent
platform
port (or I / O port)
processor
processor clock
program

back to top of page

Q

back to top of page

R
random - access memory (RAM)
read only memory
real time clock
registers
repetition
reliability


back to top of page

S
selection
software
source code
system


back to top of page


T
trace table
transistor
truth table
trust


back to top of page

U
unary operator
universal computer

back to top of page

V
virtual memory
volatile

back to top of page


W
while loop
word size

back to top of page


X

back to top of page

Y

back to top of page

Z


back to top of page



                                   
<back<




accumulator

In a computer CPU, an accumulator is a register in which intermediate arithmetic and logic results are stored. Without a register like an accumulator, it would be necessary to write the result of each calculation (addition, multiplication, shift, etc.) to main memory, perhaps only to be read right back again for use in the next operation. Access to main memory is slower than access to a register like the accumulator because the technology used for the large main memory is slower (but cheaper) than that used for a register.

The canonical example for accumulator use is summing a list of numbers. The accumulator is initially set to zero, then each number in turn is added to the value in the accumulator. Only when all numbers have been added is the result held in the accumulator written to main memory or to another, non-accumulator, CPU register.

http://en.wikipedia.org

back to top of page


AND

http://en.wikipedia.org/wiki/Bitwise_operator




back to top of page

arithmetic / logic unit (ALU)


the component of the computer which manipulates
the binary data is the arithmetic / logic unit



movement of data between the ALU and other components
of the computer is coordinated by the control unit

back to top of page

Assembler (From Wikipedia, the free encyclopedia)

An assembler is a computer program for translating assembly language — essentially, a mnemonic representation of machine language — into object code. A cross assembler (see cross compiler) produces code for one type of processor, but runs on another. The computational step where an assembler is run is known as assembly time.

As well as translating assembly instruction mnemonics into opcodes, assemblers provide the ability to use symbolic names for memory locations (saving tedious calculations and manually updating addresses when a program is slightly modified), and macro facilities for performing textual substitution — typically used to encode common short sequences of instructions to run inline instead of in a subroutine.

Assemblers are far simpler to write than compilers for high-level languages, and have been available since the 1950s. Modern assemblers, especially for RISC based architectures, such as MIPS, Sun SPARC and HP PA-RISC, optimize instruction scheduling to exploit the CPU pipeline efficiently.

High-level assemblers provide high-level-language abstractions such as advanced control structures, high-level procedure/function declarations and invocations, and high-level abstract data types including structures/records, unions, classes, and sets.


back to top of page


Assembly language From Wikipedia, the free encyclopedia

Assembly language commonly called assembly or asm, is a human-readable notation for the machine language that a specific computer architecture uses. Machine language, a pattern of bits encoding machine operations, is made readable by replacing the raw values with symbols called mnemonics.

For example, a computer with the appropriate processor will understand this x86/IA-32 machine language:

10110000 01100001

For programmers, however, it is easier to remember the equivalent assembly language representation:

mov  al, 061h

which means to move the hexadecimal value 61 (97 decimal) into the processor register with the name "al". The mnemonic "mov" is short for "move", and a comma-separated list of arguments or parameters follows it; this is a typical assembly language statement.

Transforming assembly into machine language is accomplished by an assembler, and the reverse by a disassembler. Unlike in high-level languages, there is usually a 1-to-1 correspondence between simple assembly statements and machine language instructions. However, in some cases an assembler may provide pseudoinstructions which expand into several machine language instructions to provide commonly needed functionality. For example, for a machine that lacks a "branch if greater or equal" instruction, an assembler may provide a pseudoinstruction that expands to the machine's "set if less than" and "branch if zero (on the result of the set instruction)".

Every computer architecture has its own machine language, and therefore its own assembly language. Computers differ by the number and type of operations that they support. They may also have different sizes and numbers of registers, and different representations of data types in storage. While all general-purpose computers are able to carry out essentially the same functionality, the way they do it differs, and the corresponding assembly language must reflect these differences.

In addition, multiple sets of mnemonics or assembly-language syntax may exist for a single instruction set. In these cases, the most popular one is usually that used by the manufacturer in their documentation.

back to top of page




Definition of a computer:

 "a device that accepts data and manipulates it
 by carrying out a sequence of instructions (a program),
so as to produce some output.
 It also has a means of storing the input, the output and the program".



Unit 6 page 13

back to top of page



control unit 



movement of data between the ALU and other components
of the computer is coordinated by the control unit


back to top of page


emergence

One reason why emergent behaviour is hard to predict is that the number of interactions between components of a system increases combinatorially with the number of components, thus potentially allowing for many new and subtle types of behaviour to emerge. For example, the possible interactions between groups of molecules grows enormously with the number of molecules such that it is impossible for a computer to even count the number of arrangements for a system as small as 20 molecules.




back to top of page


program
A program is a single, complete and more or less self contained ordered list of instructions
that can be executed on a computer.

Programming simply refers to how programs are built or constructed.

back to top of page