Cse 112 8

14
Dr Md Kabirul Islam Daffodil International University Monday, June 20, 2022 1

Transcript of Cse 112 8

Page 1: Cse 112 8

Dr Md Kabirul IslamDaffodil International University

Wednesday, April 12, 2023 1

Page 2: Cse 112 8

1. Computer Software (Relation between HD and SW, Logical architecture, Activities, Types, Classification chart, system software, Operation system)

Wednesday, April 12, 2023 2

Page 3: Cse 112 8

Contents of Today LectureSome definitions (Editor, Assembler, Translator, Interpreter,

Compiler, Linker)Difference between Interpreter and CompilerProcess of Compilation (Lexical analysis, Syntax analysis,

Code generation)Utility Programs (disk formatting, data compression, data

backup, antivirus)Steps to write a programSoftware development steps

Wednesday, April 12, 2023 3

Follow books of Ismail in Chapter 8

Page 4: Cse 112 8

Editor and AssemblerEditor For creation programs, documents or text. Done by series of command or special edit keys on keyboard Editor can change source program

Assembler Convert assembly language program into machine language

program Executed only when assembly process is completed Generates diagnostic error message

Wednesday, April 12, 2023 4

Page 5: Cse 112 8

Translator, Interpreter, CompilerTranslator Converting a program in one programming language in a program in

another programming language Two types depending on nature of source language

Interpreter: Translates the program line by line Required less memory Execution time more Good for fast debugging and testing Every line is checked for syntax and then converted to equivalent machine

code

Compiler Translates the entire program at a time Required more memory Execution time less Slow for fast debugging and testing Converts entire program to machine code , when all syntax errors are

removed, and executes the object code directlyWednesday, April 12, 2023 5

Page 6: Cse 112 8

LinkerUsed to properly combine all the object program files of software, and to convert them into final executable program, which is sometimes called load module.

Wednesday, April 12, 2023 6

Page 7: Cse 112 8

Process of compilationA compiler is a translator program, which converts a high level program into an equivalent machine language program that can be executed. The major steps involved in compilation process.

1.Lexical analysis2.Syntax analysis3.Code generation

Wednesday, April 12, 2023 7

Page 8: Cse 112 8

Process of CompilationLexical analysisRead the source program and separates all characters of source

program into meaningful groups called the tokens.

Syntax analysis- Receives the tokens one by one- Checks if the tokens occur in permissible sequences- Groups the token into syntactic structures following the rules of

source program

Code Generation:- Allocation of memory space for the data items used in program- Generation of machine language instructions

Wednesday, April 12, 2023 8

Page 9: Cse 112 8

Utility ProgramDisk formatting utilityFor requirements of operating system. It may be hard disk, floppy disk,

optical disk.

Data CompressionUse compression algorithm for reducing memory space. Decompression

algorithm used to bring back normal size of data.

Data backupData can be lost due to disk crash, virus or simply accidental erasure. It is

used to create a copy of data on some storage media which can be stored off-line away from computer system.

Antivirus A program infects other programs

Wednesday, April 12, 2023 9

Page 10: Cse 112 8

Steps to write a program– Specifying the problem– Analyzing the problem – Algorithm development– Pseudo Code– Flowcharts– Coding– Testing– Debugging– Documentations– Maintenance

Wednesday, April 12, 2023 10

Page 11: Cse 112 8

Computer SoftwareSoftware is a set of programs, which is

designed to perform a well defined function. A program is a sequence of instructions written to solve a particular problem.

There are two types of softwareSystem Software (operation, control,

processing of the computer itself)Application Software (Microsoft word, Excel,

student record software, ERP etc)

Wednesday, April 12, 2023 11

Page 12: Cse 112 8

Software development steps

A software development process, also known as a software development life-cycle (SDLC), is a structure imposed on the development of a software product. Similar terms include software life cycle and software process.

– Specifying the problem, planning the program to solve the problem

– Coding the program– Testing, Debugging, and Documentations– Implementing the program– Evaluating and maintaining the program

Wednesday, April 12, 2023 12

Page 13: Cse 112 8

Software Development Steps

Wednesday, April 12, 2023 13

Page 14: Cse 112 8

Software Development Lifecycle

Wednesday, April 12, 2023 14