Computer Language Flashcards

1
Q

Text based Interfaces

A

User types in commands as a series of words or abbreviations. All commands can be carried out using the keyboard. Characters and control keys (arrows, Return, Tab, etc)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Text based Interfaces - Use

A

Setting up a BIOS

Older business software e.g. accounts packages.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Text based Interfaces - Advantages

A
  • Simple and accurate.

- Little processing power needed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Text based Interfaces - Disadvantages

A
  • Needs Keyboard

- Need to know commands in advance.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Forms Dialogue

A

Interaction is through a series of forms that are used to enter data and display results.

Many inputs may use drop down boxes, radio buttons and check boxes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Forms Dialogue - Use

A

Setting configuration .

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Forms Dialogue - Advantages

A

Familiar to paper forms, which might be familiar with.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Forms Dialogue - Disadvantages

A

May be restrictive.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Graphical User Interfaces (GUI)

A

Combination of windows, menus, icons and a pointer. (WIMP)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Graphical User Interfaces (GUI) - Benefits

A

(USUALLY)

  • Easier to learn for novice.
  • More intuitive to use once learned.
  • Allows customization (desk-top, creating shortcuts).
  • Similar to other packages with which users are familiar.
  • No need to learn complex text commands
  • Has good help systems, tutorials, wizards, etc.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Graphical User Interfaces (GUI) - Disadvantages

A
  • Requires a lot of processing power.

- Requires hard disk space.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Dedicated Keys

A

A specific key or button has a function associated with it. May also refer to a key combination eg C for copy.

USE: As control buttons for devices with embedded computers eg cameras.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Soft Keys

A

Keys that can be programmed to perform specific functions.

USE: allocating frequently performed tasks to the function key on a keyboard.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Voice Synthesis - Use

A
  • Automated announcements e.g. on board trains - will not be forgotten.
  • Used with automated phone systems.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Voice Synthesis - Advantages

A
  • Useful for blind, e.g. reading machine.

- useful when screen can not be used e.g satellite navigation systems.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Voice Synthesis - Disadvantage

A
  • May sound very artificial, lacks expression.
  • No use in noisy environments.
  • No use for deaf.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Speech recognition

A

Device recognizes spoken words.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Speech recognition - Benefits

A
  • Speeds up text input/ faster then typing.
  • May help to avoid RSI.
  • Hands free, user can do other tasks at the same time.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Speech recognition - Problems

A
  • The System can’t tell the difference between homophones.

- The system can get confused between commands and dictation.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Handwriting Recognition

A

User uses a pad and writes as if with a pen on paper. Computer recognizes the characters written as if they were typed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Handwriting Recognition - Benefits

A

It’s easier/faster for users than typing.
It’s more “natural” form of input.
Avoids use of bulky keyboard.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Design validation

A

Does it meet requirements?
Have the appropriate techniques been used? - Methods of implementation, hardware.
Is the user interface acceptable?
Feedback from prototypes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Design evaluation

A

Can the design be implemented with given resources?
Can the design be completed on time?
Is the design as simple as possible?
Can the design be completed within the given budget?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Algorithm

A

An algorithm is a sequence of steps designed to perform a particular task.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Types of algorithms

A

-Structured English.
-Pseudo code.
Flowchart.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Machine language

A

Instructions represented by patters of bits that the processor in a computer can understand.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

What is Assembly Language?

A

Assembly Language is an abbreviation of machine language.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

Semantics

A

The rules which govern the meaning of a word or phrase.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

Syntax

A

The rules which govern the way in which words can be put together.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

Language Levels

A

Computer languages are classified according to the way in which they interact with the hardware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

Low Level Languages: FEATURES

A
  • Few data structures.
  • Are concerned largely with operating on bits.
  • Commands cover only simple operations such as shifts, additions, and transfer memory to a register.
  • Commands interact directly with the hardware.
  • Programs are difficult to transfer to different types of computer.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

High Level Languages: FEATURES

A
  • Commands are very similar to “English” therefore it’s easier to understand.
  • Commands are more powerful than in a low level language.
  • There are a variety of data structures available e.g. strings, arrays, records.
  • If there are errors the translation process will identify many of them.
  • The commands do not refer to hardware directly so they are easier to transfer from one type of machine to another.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

Use low level language when

A
  • Control of hardware directly is needed.
  • maximum performance is needed.
  • Resulting program can be very small.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

Use high level language when

A
  • Allow portability.
  • Easier to write in.
  • Whenever possible.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

Procedural Programming (Imperative Languages)

A

Languages where a series of command loops, decisions and calculations are carried out in sequence.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q

Procedural Languages

A

Procedural languages are to do with actions, calculations and following a set of instructions. They are used for most programming tasks.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

Sequence

A

Carry out each instruction in turn.

38
Q

Repitition

A

Loops are used to allow instructions to be repeated.

39
Q

Selection

A

If/case statements are used to allow decisions to be made.

40
Q

Recursion

A

A recursive subroutine is one that calls itself; there will be a recursive part and a non recursive part (base case).

41
Q

Non Procedural Languages (Declarative languages/ logical programming)

A

Non procedural languages are concerned with facts, rules and queries.

42
Q

Object orientated

A

Object orientated languages are when where the problem is broken down into a series of classes. Each class describes an object that has both data and methods (actions).

43
Q

Encapsulation

A

The idea of having a class that describes data and methods of an object.

44
Q

Polymorphism

A

Several methods can have the same name provided they differ in their parameters.

45
Q

Inheritance

A

A class might be based on and extend an existing class so only the differences have to be programmed.

46
Q

Special purpose language

A

A special purpose language will have features that are relevant to a particular application such as simulation or control.

Example: SQL and HTML

47
Q

Visual language.

A

Many languages have tools that allow a GUI to be designed visually for an event driven environment. The tool then writes the program (Code Generation) to create the GUI.

48
Q

Application Languages

A

An application language is a language built into an application so that addition features can be added through program code.

49
Q

4GL

A

A 4GL is a high level language that allows data to be queried & manipulated. Applications to be produced with little programming experience.

50
Q

Scripting languages

A

A scripting languages is a high-level programming language that is interpreted not compiled and often embedded in other languages e.g. to add functionality to a web page.

51
Q

Standardising a Language: What is it?

A

Standardizing a language makes it easier to move a program from one computer to another (portable). Standardizing is a slow/complex process and some claim inhibits innovation.

52
Q

Natural Language

A

Human Languages. They tend to be ambiguous (would have multiple meanings) so are not good for controlling a computer.

53
Q

Nested Loops

A

When a loop accrues in another loop.

54
Q

When is recursion used:

A
  • Quick sort.
  • Tree processing.
  • Binary search.
55
Q

Global Variable

A

A global variable exists throughout the program (class).

56
Q

Local Variable

A

A local variable only exists in a part of a program or class.

57
Q

Parameter

A

A parameter is a variable that is local to a method that it use to pass data into or out of a method.

58
Q

Advantages of libraries

A
  • Code is re-usable.
  • Reduces development time.
  • Generally written by experts.
  • Already tested, reduces testing time.
59
Q

Parallel Processing

A

The simultaneous use of several processors/cores to perform a single task.

60
Q

Parallel Processing used for:

A

Extremely large/complicated calculation is being carried out.

For example: weather forecasting, image processing.

61
Q

Libraries

A

A (subprogram) library is a set of prewritten modules/sections of code to carry out a particular task.

62
Q

Advantages of Libraries

A
  • Code is re-usable.
  • Reduces development time.
  • Generally written by experts.
  • Already tested, reduces testing time.
63
Q

Syntax Diagrams

A

Syntax diagram show the legal syntax of the program (but not the semantics) and are mainly used by programmers as a quick reference.

64
Q

BNF

A

Backus Naur Form is a language for defining the syntax of a program language. Such languages are known as meta languages.

::= |

65
Q

Weaknesses of interpreted languages

A
  • Slower execution - translating as it runs
  • Source code and interpreter are both needed to run the program.
  • Errors are not detected until that line is executed.
66
Q

Advantages of interpreted languages

A
  • Larger systems compilation can be slower, makes program development slow.
  • Scripting languages can be translated into machine code for computer they are on.
67
Q

Linker (Linkage Editor)

A

Linker (Linkage Editor) The link editor joins the separate pieces of machine code that form the program with library code to produce a single executable program.

68
Q

Loader

A

The loader is part of the operating system that transfers an executable program from disc into memory ready for execution. The OS decides on the address to be used.

69
Q

Relocatable code

A

Relocatable code is (machine) code which will work correctly from wherever the OS decides to load the code into memory.

70
Q

Translation Program

A

A translation program coverts the source code/high level code into low level code/machine code ready for execution by the computer.

71
Q

Compilation Steps

A
  1. Lexical Analysis.
  2. Syntax analysis.
  3. Semantic analysis.
  4. Code optimization.
  5. Code generation.
72
Q

Compilation Steps: Lexical analysis

A
  • Breaks up the source program into words and other symbols (called tokens).
  • finds word boundaries by looking … for delimiters (spaces etc)
  • Removes comments and excess spaces.
  • Programmer defined terms are added to symbol table.
73
Q

Compilation Steps: Syntax analysis

A
  • Checks that rules of language are met (from a BNF type definition)
  • Produces syntax error message if rules are broken.
74
Q

Compilation Steps: Semantic analysis

A
  • Checks that variables are declared
  • Checks data type for variables
  • Checks data type for parameter.
75
Q

Compilation Steps: Code Optimization

A
  • Removes instructions that have no affect.

- Makes sure that frequently used variable are stored in register.

76
Q

Compilation Steps: Code Generation

A
  • Produces the machine code equivalent program.
  • Substitutes sections of machine code to replace high level instructions
  • Loops and decisions are replaced by branches
  • Identifiers are replaced by their addresses.
77
Q

Syntax error

A

Errors produced which don’t comply with the programming language standards.

Example:
string x;
string y;

x = 4*y;

Error produced since a string can’t be multiplied.

78
Q

Pre run errors (Linking errors)

A

Errors may be generated by the linked or loaded if for example a required library is not present (or in the wrong version)

79
Q

Run time errors

A
  • Divide by zero

- Overflow

80
Q

Logic errors

A

These errors that do not stop execution but they do mean that the program does not produce the desired outcome.

81
Q

CASE Tools

A

Computer Aided Software Engineering, it refers to any application that takes description of a problems and generates code.

82
Q

Advantage of CASE tool

A

CASE tools reduce the development time and reduces the number of errors in the code.

83
Q

Debugging Tools

A

A debugger is used to help to track down logical and run time errors.

84
Q

Debugger: Breakpoints

A

A breakpoints marks an instruction in the program. The program will execute as normal until the breakpoints is reached’ it will then stop and allow variable to be examined.

85
Q

Debugger: Trace

A

A trace facility records the order in which lines of a program are executed. This may be sent to a printer of a file for later analysis. It may allow the programmer to step through the instructions one at a time and values of variables observed.

86
Q

Debugger: Variable watch

A

Selected variables and their values can be displayed as the program runs. using this is possible to see what actions cause a variable to change.

87
Q

Debugger: Store dumps

A

This is a copy of all the variables and their values. It can be set up to happen when a particular instruction is reached. it is normally sent to a printer or a file for later analysis.

88
Q

Error diagnostics

A

The run time system with many languages will produce error message when run time error occurs. E.g.
Null pointer at line 458
Overflow at line 326
These helps identify the nature of any run time error.

89
Q

Speech recognition: USE

A

To control a device (voice commands).
To replace the keyboard for the entry of large amounts of text (dictation).
For use with automated phone systems (bank balance enquirers).

90
Q

Handwriting recognition: USE

A

As an alternative to the keyboard.
Might be used on a hand held computer.
Used on Interactive White Boards.