HIIM 123 - Unit 1.pdf

Full Transcript

University of Hail College of Public Health and Health Informatics Department of Health Informatics and Information Management HIIM 123: Computer Programing in Healthcare Systems 1 Unit...

University of Hail College of Public Health and Health Informatics Department of Health Informatics and Information Management HIIM 123: Computer Programing in Healthcare Systems 1 Unit 1 Overview of Computers And Programming Note: These slides have been edited by Mrs. Salam Albazrawi for the HIIM 123 Course based on the original slides provided by the Department. 2nd Semester 2023/ 2024 Outlines  Overview of Computers  Hardware  Software  Computer Languages and Compiler  Software Development Method 2 Computers 3 Computers  Computers receive input, store, process, and output information.  Computer can deal with numbers, text, images, graphics, and sound.  Computers are worthless without programming.  Programming Languages allow us to write programs that tell the computer what to do and to provide a way to communicate with computers. Programs are then converted to machine instructions so the computer can understand it. 4 Hardware & Software  Hardware is the equipment used to perform the necessary computations. Hardware Examples: Processor, memory, disk storage, monitor, keyboard, mouse, printer, etc.  Software consists of the programs that enable us to solve problems with a computer by providing it with a list of instructions to follow. Software Examples: Word, Internet Explorer, Windows OS, etc. 5 Computer Hardware  Main Memory:  RAM - Random Access Memory - Memory that can be read and written in any order (as opposed to sequential access memory), volatile.  ROM - Read Only Memory - Memory that cannot be written to, non-volatile.  Secondary Memory: Magnetic hard disks, Flash (solid state) disks, Optical disks (CDs and DVDs).  Central Processing Unit: Executes all computer operations and perform arithmetic and logical operations.  Input/Output Devices: Are used to input data or to output information such as keyboard, mouse, scanner, monitor, printer, and speakers.  Computer Networks: Computers that are linked together can communicate with each other. 6 Computer Hardware Examples 7 Flow of Information During Program Execution 8 Computer Hardware - Understanding Memory  Memory Cell (MC): An individual storage location in memory.  Address of a MC: the relative position of a memory cell in the main memory.  Content of a MC: Information stored in the memory cell: Program instruction or Data. Note: Every memory cell has content, whether we know it or not. 9 Computer Hardware - Understanding Memory  Each Memory Cell has an address and a content.  The address is an integer.  The content can be an integer, a real number, or a character. 10 Computer Hardware - Understanding Memory  Everything in a computer is 0's and 1's.  Bit: The name comes from binary digit.  The bit is the smallest building block of storage.  A bit can hold only one of two values: 0 or 1, corresponding to the electrical values of off or on, respectively.  Because bits are so small, you rarely work with information one bit at a time. Bits are usually assembled into a group of eight to form a byte.  A memory cell is actually a grouping of smaller units called bytes.  A byte is made up of 8 bits.  This is about the amount of storage required to store a single ASCII character, such as the comma (,) character. 11 Example: The comma character , Computer Hardware - Understanding Memory  Bit: Either 0 or 1.  Byte = 8 bits.  Kilobyte (KB) = 210 = 1024 Bytes  Megabyte (MB) = 220 > 106 Bytes  Gigabyte (GB) = 230 > 109 Bytes  Terabyte (TB) = 240 > 1012 Bytes Note: The abbreviations for numbers of bits use a lower-case "b" instead of an upper-case "B". 12 Computer Software  Operating System:  Controls the interaction between machine and user.  Communicates with computer user.  Collects input and Displays output.  Manages memory and processor time.  Manages Storage Disk.  Examples: Windows, Linux, etc.  Application Software:  Developed to assist a computer user in accomplishing specific tasks.  Example: Word, Excel, Internet Explorer. 13 Computer Languages  Machine Language: 00000001001010100100000000100000 add $t0, $t1, $t2  A collection of machine instructions t0 = t1 + t2  Not standardized. There is a different machine language for every processor family.  Assembly Language:  Uses symbols (called mnemonics) that correspond to machine language instructions.  Low level: Very close to the actual machine language.  High-level Language:  Combines algebraic expressions and high-level commands.  High level: Very far away from the actual machine language.  Examples: Fortran, C, Prolog, C#, Perl, and Java. 14 Compiler  Compilation is the process of translating the source code (high- level) into executable code (machine level).  Source file: contains the original program code.  A Compiler turns the Source File into an Object File.  Object file: contains machine language instructions.  A Linker turns the Object File into an Executable.  Integrated Development Environment (IDE): a program that combines simple text editor with a compiler, linker, loader, and debugger tool.  For example, Eclipse or Visual Studio 15 EDITING, TRANSLATING, LINKING, AND RUNNING HIGH-LEVEL LANGUAGE PROGRAMS 16 Software Development Method 1. Specify problem requirements 2. Analyze the problem 3. Design the algorithm to solve the problem 4. Implement the algorithm 5. Test and verify the completed program 6. Maintain and update the program 17 Steps Defined 1. Problem: statement that specifies the problem that should be solved on the computer. 2. Analysis: Understanding the problem and identifying the inputs, outputs, and required computation. 3. Design: Designing and developing the list of steps called algorithm to solve the problem using Pseudo code or Flowchart. 4. Implementation: writing the algorithm as a program using a given programming language. 5. Testing: Testing requires checking and verifying that the program actually works as desired. 6. Maintenance: Maintaining involves finding previously undetected errors and keep it up-to-date. 18 Pseudo code & Flowchart 1. Algorithm: A list of steps for solving a problem. 2. Pseudo code: A combination of English phrases and language constructs to describe the algorithm steps. 3. Flowchart: A diagram that shows the step-by-step execution of a program. 19 Why use pseudo code?  The benefit of pseudo code is that it enables the programmer to concentrate on the algorithm without worrying about all the syntactic details of a particular programming language.  In fact, you can write pseudo code without even knowing what programming language you will use for the final implementation.  Pseudo code cannot be compiled or executed and does not follow syntax rules. It is simply an important step in producing the final code. 20 Flowcharts  Flowchart uses boxes and arrows to show step by step execution of a program. Process Start or Terminal Decision Document Display Manual Input 21 Software Development Method – Example 1 Calculate your final grade for HIIM 123. 1. Specify the problem Get different grades and then compute the final grade. 2. Analysis We need to input grades for Medterm exam, Final exam, and Lab exam. We need to output final grade. Formula: Final grade= Medterm exam grade + Final exam grade + Labs grade G= M + F + L 22 Software Development Method – Example 1 3. Design Using Pseudo code: 1. Get grades M, F, L 2. Calculate Final grade G= M + F + L 3. Display Final grade G OR Start Using Flowchart M, F, L G= M + F + L G 23 End Software Development Method – Example 1 4. Implementation in C Language 24 Software Development Method – Example 1 5. Test  We need to test the previous program to make sure it works. To test we run our program and enter different values and make sure the output is correct. 6. Maintenance  Fix errors.  Improved performance. 25 Software Development Method – Example 2 Converting Miles to Kilometers 1. Problem: Your boss wants you to convert a list of miles to kilometers. Since you like programming, you decide to write a program to do the job. 2. Analysis We need to receive miles as input We need to output kilometers We know 1 mile = 1.609 kilometers 3. Design (Using Pseudo code) 1. Get distance in miles 2. Convert to kilometers 3. Display kilometers 26 Software Development Method – Example 2 Converting Miles to Kilometers 4. Implementation in C Language 27 Software Development Method – Example 2 Converting Miles to Kilometers 5. Test  We need to test the previous program to make sure it works. To test we run our program and enter different values and make sure the output is correct. 6. Maintenance  Fix errors.  Improved performance. 28

Use Quizgecko on...
Browser
Browser