1.2.4 Flashcards
(30 cards)
Programming Paradigm
A style or way of programming. E.g. declarative, imperative, procedural, object-oriented, functional
Procedural Language
Any high level language in which program statements can be grouped in self-contained blocks called procedures and functions. These procedures have their own variables, not accessible outside the procedure.
Assembly Language
A language which is related very closely to the computer’s own machine code. There exists a one-to-one mapping between this language and machine code.
Machine Code
Set of all possible instructions made available by the hardware design of a particular processor. Closest to pure binary.
Low Level Language
A language which is close to machine code. Related closely to the design of the machine.
High Level Language
A language designed to help a programmer express a computer program in a way that reflects the problem that is being solved, rather than the details of how the computer will produce the solution.
Little Man Computer (LMC)
An instructional model of a computer, created by Dr. Stuart Madnick in 1965. It models a simple von Neumann architecture computer - which has all of the basic features of a modern computer. It can be programmed in assembly code
Immediate Addressing
Uses the data in the address field, not as an address, but as a constant that is needed by the program. An example is a routine counting up to 10, which may have the constant ‘10’ supplied in the address field of an instruction. Although the address field cannot hold numbers as large as those that can be stored as data in a memory location, because space has to be left for the operation code field, this is a particularly convenient method of loading constants into the accumulator.
Direct Addressing
Uses the data in the address field without alteration, to look up the data value in memory. This is the simplest method of addressing and is used in the LMC.
Indirect Addressing
Uses the operand to hold the address of a location that contains the required address.
Indexed Addressing
Modifies the address (either a direct or an indirect address) in the address field by the addition of a number held in a special-purpose registers, called an index register, before the address is used. Index registers are quickly and easily altered providing an efficient way of accessing a range of memory locations, such as in an array.
Object Orientation (OO)
Looking at systems by classifying them into real world objects and the behaviours by which these objects interact.
Object Orientated Programming (OOP)
A method of programming which classifies real world objects into classes and encapsulates those objects’ attributes and behaviours.
Class
A type definition or templating for creating objects
Object
An instance of a class.
Base Class
Contains attributes and methods. It is the highest class and does not inherit from any other class.
Superclass
A class that has been extended by another class. It allows the extending class to inherit its attributes and methods.
Subclass
A class that extends another class. It inherits the methods and attributes of the class it extends.
Instantiation
The process of creating an actual named instance of class by invoking the class’ constructor.
Overriding
A method in a subclass or derived class which has the same name as a method in one or more of its superclass’s. The method supersedes all other versions of the method above it in the inheritance tree.
Method
A program routine contained within an object designed to perform a particular task on the data within the object. A method can broadly be thought of as a procedure / function from more traditional procedural programming languages.
Attribute
A named single piece of data within a class. Has a type.
Inheritance
When a derived class is defined it also gains all the attributes and methods of the base class.
Encapsulation
All of the object’s attributes are contained and hidden in the object and access to them is restricted to operations of that class.