Binary system

1,019 views
911 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,019
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
52
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Binary system

  1. 1. Binary System
  2. 4. 2 4 16 2 3 8 2 2 4 2 1 2 2 0 1 0 0 1 1 0 1 1 1 0 1 1 0 0 1 1 1 1 1 1
  3. 6. Decimal Binary Octal HexaDecimal 1 01 001 0000 8 1000 010 0008 10 1010 012 A 11 1011 013 B 12 1100 014 C 14 1111 016 D 15 1111 017 E
  4. 23. De Morgan’s law
  5. 25. <ul><li>DETAILED INSTRUCTIONS TO CONTROL COMPUTER OPERATION </li></ul><ul><li>PROGRAM: SET OF INSTRUCTIONS TO THE COMPUTER </li></ul><ul><li>STORED: PROGRAM MUST BE IN PRIMARY STORAGE </li></ul><ul><li>SYSTEM SOFTWARE: MANAGES COMPUTER RESOURCES </li></ul><ul><li>APPLICATION SOFTWARE: SPECIFIC BUSINESS APPLICATION </li></ul><ul><li>* </li></ul>SOFTWARE
  6. 26. SOFTWARE PROGRAMMING LANGUAGES: ASSEMBLY LANGUAGE; FORTRAN; COBOL; PL / 1; QBASIC; PASCAL; C; C++; FOURTH GENERATION LANGUAGES <ul><li>OPERATING SYSTEM: </li></ul><ul><li>SCHEDULED COMPUTER EVENTS </li></ul><ul><li>ALLOCATES COMPUTER RESOURCES MONITORS EVENTS </li></ul><ul><li>LANGUAGE TRANSLATORS: </li></ul><ul><li>INTERPRETERS </li></ul><ul><li>COMPILERS </li></ul><ul><li>UTILITY PROGRAMS: </li></ul><ul><li>ROUTINE OPERATIONSMANAGE DATA </li></ul>HARDWARE SYSTEM SOFTWARE APPLICATION SOFTWARE
  7. 27. MULTIPROGRAMMING OPERATING SYSTEM UNUSED MEMORY PROGRAM 1 TRADITIONAL SINGLE-PROGRAM SYSTEM OPERATING SYSTEM UNUSED MEMORY PROGRAM 1 PROGRAM 2 PROGRAM 3 MULTIPROGRAMMING ENVIRONMENT
  8. 28. MULTITASKING <ul><li>MULTIPROGRAMMING ON A SINGLE-USER SYSTEM SUCH AS A MICROCOMPUTER </li></ul><ul><li>* </li></ul>
  9. 29. MULTITHREADING <ul><li>ABILITY TO EXECUTE DIFFERENT PARTS (THREADS) OF A PROGRAM SIMULTANEOUSLY </li></ul><ul><li>* </li></ul>
  10. 30. VIRTUAL STORAGE <ul><li>METHOD OF HANDLING SEVERAL PROGRAMS IN PRIMARY STORAGE: </li></ul><ul><li>PROGRAM DIVIDED INTO </li></ul><ul><ul><li>FIXED LENGTH PORTIONS (PAGES) OR </li></ul></ul><ul><ul><li>VARIABLE LENGTH (SEGMENTS) </li></ul></ul><ul><li>CURRENT PORTIONS RESIDE IN PRIMARY STORAGE </li></ul><ul><li>PORTIONS SWAPPED OUT WHEN DONE </li></ul><ul><li>* </li></ul>
  11. 31. TIME SHARING <ul><li>MANY USERS SHARE LARGE CPU: </li></ul><ul><li>TIME IN CPU DIVIDED INTO SLICES (e.g.: 2 MICROSECONDS) </li></ul><ul><li>EACH USER HAS ACCESS TO CPU DURING SLICE </li></ul><ul><li>SINCE CPU IS FAST, CAN DO MUCH DURING TIME SLICE </li></ul><ul><li>USER’S JOB SWAPPED OUT AT END OF SLICE </li></ul><ul><li>* </li></ul>
  12. 32. MULTIPROCESSING <ul><li>TWO OR MORE PARALLEL PROCESSORS IN SYSTEM </li></ul><ul><li>PROGRAM CAN BE DIVIDED TO BE PROCESSED BY MULTIPLE CPUs </li></ul><ul><li>CAN PROCESS LARGE PROGRAMS MORE RAPIDLY </li></ul><ul><li>* </li></ul>
  13. 33. <ul><li>SOURCE CODE: HIGH-LEVEL LANGUAGE INSTRUCTIONS </li></ul><ul><li>COMPILER: TRANSLATES HIGH-LEVEL CODE INTO MACHINE LANGUAGE </li></ul><ul><li>OBJECT CODE: TRANSLATED INSTRUCTIONS READY FOR COMPUTER </li></ul><ul><li>* </li></ul>LANGUAGE TRANSLATION
  14. 34. TRANSLATION PROCESS SOURCE CODE PROGRAM COMPILER OBJECT CODE LINKAGE EDITOR LOAD MODULE OTHER OBJECT CODE MODULES UTILITY PROGRAMS PERFORM ROUTINE TASKS
  15. 35. GRAPHICAL USER INTERFACE (GUI) <ul><li>OPERATING SYSTEM USES: </li></ul><ul><li>GRAPHIC ICONS: Icons, buttons, bars, boxes </li></ul><ul><li>POINTER: Mouse, pen, touch screen </li></ul><ul><li>TO ISSUE COMMANDS </li></ul><ul><li>MAKE SELECTIONS </li></ul><ul><li>* </li></ul>
  16. 36. MICROCOMPUTER OPERATING SYSTEMS OPERATING SYSTEM FEATURES 32-bit operating system, GUI, multitasking, networking 32-bit operating system not limited to Intel chips. Multitasking, multiprocessing, networking 32-bit. Developed for IBM PS/2. Multitasking, networking Paired-down for handheld computers, wireless communication devices Windows 98 & 95 Windows NT Me & 2000 Windows CE OS/2
  17. 37. OPERATING SYSTEM Mac OS For Macintosh computers. Multitasking. Powerful graphics, multimedia Unix For powerful microcomputers, workstations, minicomputers. Multitasking, multi-user processing, networking. Portable to various computer platforms DOS For IBM (PC-DOS) and PC (MS-DOS). Program memory: 640K Linux Free, reliable alternative to Unix, Windows. Runs on many Platforms. Open-source FEATURES MICROCOMPUTER OPERATING SYSTEMS
  18. 38. Why are there so many programming languages? <ul><li>evolution -- we've learned better ways of doing things over time </li></ul><ul><li>orientation toward special purposes </li></ul><ul><li>orientation toward personal preference </li></ul>
  19. 39. What makes a language successful? <ul><li>easy to learn (BASIC, Pascal, LOGO, Scheme) </li></ul><ul><li>easy to express things -- easy to use once fluent -- &quot;powerful&quot; (C++, Common Lisp, APL, Algol-68, perl) </li></ul><ul><li>easy to implement (BASIC, Forth) possible to compile to very good (fast/small) code (Fortran) </li></ul><ul><li>backing of a powerful sponsor (COBOL, PL/1, Ada, Visual Basic) </li></ul><ul><li>wide dissemination at minimal cost (Pascal, Turing, Java) </li></ul>
  20. 40. Why do we have programming languages? -- what is a language for? <ul><li>languages from the user's point of view </li></ul><ul><ul><li>way of thinking -- way of expressing algorithms </li></ul></ul><ul><li>languages from the implementor's point of view </li></ul><ul><ul><li>abstraction of virtual machine -- way of specifying what you want the hardware to do without getting down into the bits </li></ul></ul>
  21. 41. Why study programming languages? <ul><li>Help you choose a language </li></ul><ul><ul><li>C vs Modula-3 vs C++ for systems programming </li></ul></ul><ul><ul><li>Fortran vs APL vs Ada for numerical computations </li></ul></ul><ul><ul><li>C vs Ada vs Modula-2 for embedded systems </li></ul></ul><ul><ul><li>Common Lisp vs Scheme vs ML for symbolic data manipulation </li></ul></ul><ul><ul><li>Java vs C/CORBA for networked PC programs </li></ul></ul><ul><li>Make it easier to learn new languages </li></ul><ul><ul><li>some languages are similar; easy to walk down family tree </li></ul></ul><ul><ul><li>concepts have even more similarity </li></ul></ul>
  22. 42. <ul><li>Help you make better use of whatever language you use </li></ul><ul><ul><li>understand obscure features </li></ul></ul><ul><ul><li>understand implementation costs: choose between alternative ways of doing things, based on knowledge of what will be done underneath </li></ul></ul>
  23. 43. GENERATIONS OF PROGRAMMING LANGUAGES <ul><li>1st. Since 1940s. MACHINE LANGUAGE: binary code </li></ul><ul><li>2nd. Since early ’50s. ASSEMBLY LANGUAGE: mnemonics for numeric code </li></ul><ul><li>3rd. Since mid ‘50s. HIGH-LEVEL LANGUAGES </li></ul><ul><li>4th. Since late ‘70s. MODERN APPLICATION PACKAGES </li></ul><ul><li>* </li></ul>
  24. 44. HIGH-LEVEL LANGUAGES <ul><li>FORTRAN ( FOR mula TRAN slator) : Scientific, Engineering applications </li></ul><ul><li>COBOL ( CO mmon B usiness O riented L anguage) : Predominant for transaction processing </li></ul><ul><li>BASIC ( B eginners A ll-purpose S ymbolic I nstruction C ode) : General purpose PC language </li></ul><ul><li>* </li></ul>
  25. 45. HIGH-LEVEL LANGUAGES <ul><li>PASCAL: Used to teach structured programming practices. Weak in file handling, input / output </li></ul><ul><li>C and C++: Powerful PC Language for developing applications. Efficient execution; cross platform. C++ is object oriented </li></ul><ul><li>* </li></ul>
  26. 46. FOURTH GENERATION LANGUAGES (4GL) <ul><li>CAN BE EMPLOYED BY END USERS </li></ul><ul><li>NONPROCEDURAL </li></ul><ul><li>CAN DEVELOP APPLICATIONS QUICKLY </li></ul><ul><li>NATURAL LANGUAGES </li></ul><ul><li>SIX CATEGORIES </li></ul><ul><li>* </li></ul>
  27. 47. FOURTH GENERATION LANGUAGES (4GL) <ul><li>1. QUERY LANGUAGES: </li></ul><ul><li>Rapidly retrieve data </li></ul><ul><li>Interactive/ on-line </li></ul><ul><li>May use NATURAL LANGUAGE </li></ul><ul><li>Support special requests for data from relational databases </li></ul><ul><li>* </li></ul>
  28. 48. FOURTH GENERATION LANGUAGES (4GL) <ul><li>2. REPORT GENERATORS: </li></ul><ul><li>Create customized reports </li></ul><ul><li>Wide range of formats </li></ul><ul><li>3. GRAPHICS LANGUAGES: </li></ul><ul><li>Can manipulate drawings, graphs, photos, videos </li></ul><ul><li>Presentation managers </li></ul><ul><li>* </li></ul>
  29. 49. FOURTH GENERATION LANGUAGES (4GL) <ul><li>4. APPLICATION GENERATORS: </li></ul><ul><li>User specifies computer needs </li></ul><ul><li>Generator creates logic and code for application </li></ul><ul><li>Greatly reduces development time </li></ul><ul><li>* </li></ul>
  30. 50. FOURTH GENERATION LANGUAGES (4GL) <ul><li>5. VERY HIGH-LEVEL PROGRAMMING LANGUAGES: </li></ul><ul><li>Professional programmer productivity tool </li></ul><ul><li>Uses fewer instructions </li></ul><ul><li>Reduces development time </li></ul><ul><li>* </li></ul>
  31. 51. FOURTH GENERATION LANGUAGES (4GL) <ul><li>7. SOFTWARE PACKAGE: Commercially available set of programs... </li></ul><ul><li>WORD PROCESSING </li></ul><ul><li>SPREADSHEETS </li></ul><ul><li>DATA MANAGEMENT </li></ul><ul><li>PRESENTATION MANAGEMENT </li></ul><ul><li>INTEGRATED SOFTWARE PACKAGES NOW COMBINE THESE TO SIMPLIFY LEARNING AND USE </li></ul><ul><li>* </li></ul>
  32. 52. SOFTWARE TOOLS <ul><li>WORD PROCESSING </li></ul><ul><li>SPREADSHEETS </li></ul><ul><li>DATA MANAGEMENT </li></ul><ul><li>PRESENTATION GRAPHICS </li></ul><ul><li>INTEGRATED SOFTWARE SUITES </li></ul><ul><li>E-MAIL </li></ul><ul><li>WEB BROWSERS </li></ul><ul><li>GROUPWARE </li></ul><ul><li>* </li></ul>
  33. 53. GROUPWARE CAPABILITIES <ul><li>GROUP WRITING & COMMENTING </li></ul><ul><li>ELECTRONIC MAIL DISTRIBUTION </li></ul><ul><li>SCHEDULING MEETINGS & APPOINTMENTS </li></ul><ul><li>SHARED FILES & DATABASES </li></ul><ul><li>SHARED TIME LINES & PLANS </li></ul><ul><li>ELECTRONIC MEETINGS & CONFERENCES </li></ul><ul><li>* </li></ul>
  34. 54. MIDDLEWARE <ul><li>SOFTWARE ALLOWS DIFFERENT APPLICATIONS TO EXCHANGE DATA </li></ul><ul><li>* </li></ul>APPLICATION A APPLICATION B MIDDLE WARE DATA
  35. 55. OBJECT-ORIENTED PROGRAMMING <ul><li>COMBINES DATA & PROCEDURES INTO A SINGLE OBJECT </li></ul><ul><li>PROGRAM SENDS MESSAGE TO OBJECT TO PERFORM EMBEDDED PROCEDURE </li></ul><ul><li>OBJECT’S DATA ENCAPSULATED FROM REST OF SYSTEM </li></ul><ul><li>CREATES REUSABLE CODE </li></ul><ul><li>REDUCES TIME AND COST OF WRITING SOFTWARE </li></ul><ul><li>* </li></ul>
  36. 56. OBJECT-ORIENTED PROGRAMMING <ul><li>VISUAL PROGRAMMING: SELECT AND ARRANGE OBJECTS RATHER THAN WRITE CODE </li></ul><ul><li>CLASS: ALL OBJECTS OF A CLASS HAVE ALL FEATURES OF THAT CLASS </li></ul><ul><li>INHERITANCE: SPECIFIC CLASS RECEIVES FEATURES OF A MORE GENERAL CLASS </li></ul><ul><li>OVERRIDE: SUBCLASS MAY OVERRIDE INHERITED METHOD (e.g.: Printout of an HOURLY worker pay check may differ from that of a WEEKLY worker </li></ul><ul><li>* </li></ul>
  37. 57. OBJECT-ORIENTED PROGRAMMING <ul><li>JAVA: Sun Microsystems OBJECT-ORIENTED PROGRAMMING LANGUAGE </li></ul><ul><li>APPLET: TINY PROGRAM TO EXECUTE SMALL FUNCTION </li></ul><ul><li>APPLETS DOWNLOADED FROM NETWORK </li></ul><ul><li>RUN ON ANY COMPUTER & OPERATING SYSTEM </li></ul><ul><li>RESULT SAVED ON NETWORK, NOT ON PC </li></ul><ul><li>ONLY NETWORK VERSION OF SOFTWARE NEEDS UPGRADE </li></ul><ul><li>* </li></ul>
  38. 58. OBJECT-ORIENTED PROGRAMMING <ul><li>HTML: Hypertext markup language, current favorite for Web pages </li></ul><ul><li>XML: e X tensible M arkup L anguage, further development of HTML describes data more fully </li></ul><ul><li>XHTML: Hybrid may replace HTML as standard for Web </li></ul><ul><li>* </li></ul>

×