programming language and translators
describe an automated system
An automated system is microprocessor-controlled. Household appliances such as washing machine or microwave oven has a single control program performing a single task with a fixed set of input and output hardware
what is a command line interface ?
Command line interface means that the user has to communicate with the computer using typed commands
features of GUI systems
1) WINDOWS are rectangular areas of the screen which contains information relating to one task. On most PC it is possible to run different tasks in different windows , displaying the results on the screen at the same time. 2) ICONS represent programs , groups of programs, directories , devices and file. It is a small symbol in the screen 3) MENU is a list of choices presented to the user by an interactive program 4) POINTER is used to select icons, pictures, text and menu options. The pointer will often take different shapes depending on the current function
what does an automated system require?
1) a sufficiently powerful processor 2) a single control program performing a single task with a fixed set of hardware 3) keypad for input 4) suitable sensors for measurement 5) suitable actuators
user interfaces can be classified as?
1) command line interface 2) graphical user interface ( WIMP)
functions of the operating systems
1) controlling the use of peripherals such as printers 2) controlling the loading and running of programs 3) dealing with execution errors and keep he computer running when they happen 4) creating a working environment in which the user can run programs 5) acts as interface between the application program and the hardware 6) recovery and shutdown procedures
disadvantages of GUI
1) they require a more powerful processor and a better graphics display 2) they use more immediate access store and secondary store.
advantages of GUI
1) users do not have to remember complicated commands 2) only valid options are available 3) there is a consistency of layout and command representation in applications
advantage of command line interface
1)each command can usually be followed by different options so that a wide variety of choices can be made
disadvantage of command line interface
1)these commands are difficult to remember 2) it is easy to make mistakes when typing the commands on the keyboard
advantages of low level language
1. A skillful programmer has complete freedom of choice of instructions and direct control over the processor's communication with its input , output and storage devices 2. fit into limited storage space 3.require limited RAM 4. run rapidly
Advantages of compilers
1. Once the source code is translated to machine code , the object code runs faster 2. the object program cannot easily be altered by other people 3. the object program may be saved on a disk and run whenever required without being re-compiled or requiring the user to have a compiler
Disadvantages of compilers
1. The program needs to be re-compiled each time the program is changed
disadvantages of assembly language
1. assembly language is machine dependent. a program written for one computer might not run in other computers with different hardware configuration 2. quite hard to learn and slow to write
disadvantage of machine language
1. it is very difficult to program in machine language 2. the programmer has to remember a lot of codes to write a program which results in program errors 3. it is difficult to debug the program written in this language 4. it is not an easy language to learn as it is difficult to understand `
disadvantages of low level languages
1. lack of relation to a human language makes them difficult to read 2. their machine oriented nature makes them difficult to learn or to debug
advantages of assembly language
1. the symbolic programming of assembly language is easier to understand and saves a lot of time and effort. mnemonics makes it easier to use than machine code. 2. it is useful for writing , operating systems , games programs, control applications where a fast and efficient use of the CPU is required 3. it is easier to correct errors and modify program instructions 4. it may be used for security reasons. Fewer people understand it therefore fewer people can copy and amend it
advantages of high level languages
1. they are easy to learn 2. easier to correct and maintain 3. programs written in high level languages are portable 4. they are more user-friendly than low level languages
functions of assembler
1. translate assembly language to machine code 2. work out where to store the machine code 3. detect errors in assembly language programs
example of high level languages
1.COBOL (common business oriented language) was developed for business applications 2. FORTRAN( formula translation) was developed for scientific applications 3. BASIC (beginners all-purpose symbolic instruction code) and visual basic were developed for general purposes and education
what is a compiler ?
It is a program translator that converts the instruction of high level language to machine language. It scans the entire source code and then translates it into machine object code at one go. A compiler is translator that goes through the translation process only once.
why is priority of interrupts needed?
Some of the interrupts require immediate attention and other interrupts that may be ignored temporarily therefore it is necessary to assign a priority to each interrupt so that when two or more interrupts occur simultaneously or an interrupt occurs while another interrupt is being serviced, the processor can compare interrupt priorities to determine whether to allow an interrupt.
what is source program?
Source program is the program written by the programmer in high level language
what is a buffer?
a buffer is a RAM memory that is used as temporary store to compensate for different speeds between the processor and the peripherals
what is a menu bar?
a menu bar is a set of menu titles displayed across the screen at the top or bottom so that the user can pick a menu
Examples of Interrupts
1) a disk drive is ready to receive more data 2) an error has occurred 3) a software error has occurred 4) the user has pressed a key to interrupt the current process
the conversation in a command line interface consist of the following sequences:
1) the computer displays a prompt 2) the user types a command and press the ENTER key 3) the computer carries out the command
what is an ISR ?
An ISR is a set of instructions to be executed for servicing an interrupt x number of interrupts= x number of ISR
what does each machine code consist of?
each machine code instruction consist of an operation code(opcode) and zero or more operands.
what is the graphical user interface?
graphical user interface means that the user interacts with what is shown on the screen using a pointing device(mouse)
what is handshaking?
handshaking is the exchange of signals to establish readiness of peripherals to transfer data
what are high level languages?
high level languages are simple languages that use English and mathematical symbols for its programs construction. any high level language must be converted to machine code language for the computer to understand. high level languages are problem oriented languages because the instructions are suitable for solving a particular problem
what happens when priority of interrupt is less or equal to priority of current task
ignore interrupt, put interrupt in a queue
what is the operating systems?
it is a software residing in the main memory which controls the general operations of the computer. the OS makes it easier for people to interact with the computer and helps users to manage the computer system
what is low level language?
low level language refer to detailed configuration hardware such as the processor's registers, input ports, output ports and specific memory locations in internal memory(RAM)
what is machine language?
machine language is the only language that is directly understood by the computer. it does not need any translator program. it is also known as machine code and it is written as strings of 1's and 0's .
what are the two types of programming language?
low level language high level language
what is object program ?
object program is when the source program is converted to machine language by the compiler
what is polling?
polling is the continuous checking of other programs or devices in a multi-access system by one program or device to see what state they are in , usually to see if they are still connected or want to communicate.
what happens when the CPU is receives an interrupt?
priority of interrupt is compared with priority of current task
machine language is also considered as
the first generation language
assembly language is considered as
the second generation language
what is a user interface?
the user interface is that part of a computer system through which a user and the communicate.
what is a pull down menu?
a pull down menu is a menu which appears below the menu bar when it is selected
why is an assembler required?
an assembler is required to translate the Assembly Language to machine language
what does and assembly language makes use of?
an assembly language makes use of mnemonics to transfer data and give instructions to the computer to perform specific tasks
what is an interrupt?
an interrupt is a signal from a peripheral or software seeking attention of the processor and may alter the sequence in which a processor executes instructions
what is assembly language?
assembly languages are easier for the programmer to understand but need to be translated but need to be translated into machine code before the computer can carry out the instructions
what is an assembler?
each assembler is written for a specific processor code or hardware and converts one assembly instruction into one machine code instruction
what happens when priority of interrupt id greater than priority of of current task
executes higher priority process
advantage of machine language
it runs very fast because no translation program is required for the CPU
what will happen if an operating system is implemented into an automated system
an operating system will unnecessarily raise the development and manufacturing costs.