ScholarQuill logoScholarQuillUniversity Notes
  • Notes
  • Past Papers
  • Blogs
  • Todo
Login
ScholarQuill logoScholarQuillUniversity Notes
Login
NotesPast PapersBlogsTodo
More
SubjectsDiscussionCGPA CalculatorGPA CalculatorStudent PortalCourse Outline
About
About usPrivacy PolicyReportContact
Notes
Past Papers
Blogs
Todo
Analytics
    Current Subject
    🧩
    Computer Organization and Assembly Language
    COMP3137
    Progress0 / 73 topics
    Topics
    1. Introduction to Computer Organization2. Assembly Language3. Comparison of Low-Level and High-Level Languages4. Register Types (16-bit): General Purpose and Special Purpose Registers5. Introduction and Usage of RAM6. Processor7. Registers8. System Bus9. Instruction Execution Cycle10. Assembly and Machine Language11. Assembler12. Linker and Link Libraries13. Programmer's View of a Computer System14. RISC and CISC Architecture15. Physical Address Calculation16. Basic Memory Organization17. CPU Organization18. Top Level View of Computer Function and Interconnection19. Assembler Instruction Cycle20. Execute Cycle21. Interrupts22. Interrupt Cycle23. Memory Connection24. Input/Output Connection25. CPU Connection26. MASM27. MIPS28. Defining Data in MASM Assembler29. Elements of Assembly Language30. Integer Constants31. Integer Expressions32. Real Number Constants33. Character Constants34. String Constants35. Reserved Words36. Identifiers37. Directives38. Instructions39. The NOP (No Operation) Instruction40. Adding and Subtracting Integer41. INC and DEC Instructions42. NEG Instruction43. How to Move Integer Number in Register44. Adding and Subtracting Numbers in Registers45. Declaration and Initialization of Variables46. Moving Data from Variable to Register47. Data Definition Statement48. BYTE and SBYTE Data49. WORD and SWORD Data50. Defining DWORD and SDWORD Data51. Knowledge about Different Data Types52. Operations, Array & Loops53. Division and Multiplication in Assembly54. Jumps Based on Specific Flags55. Jumps Based on Equality56. Simple Jump Statements57. Jumps Based on Specific Condition58. Code Examples59. Practice on MASM60. Procedures61. File Operations Procedures62. Labels in Procedures63. Stack64. Runtime Stack65. Conditional Control Flow Directives66. Compound Expressions67. Data Representation & Conversion68. Architecture69. Data Path70. Control Unit71. Critical Path72. General Principles of Pipelining73. Pipelined Y86 Implementations
    COMP3137›Basic Memory Organization
    Computer Organization and Assembly LanguageTopic 16 of 73

    Basic Memory Organization

    3 minread
    433words
    Beginnerlevel

    Basic Memory Organization

    Memory organization refers to how memory is structured and managed in a computer system. It involves how different types of memory (like RAM, ROM, and cache) are organized, how data is stored and accessed, and how the CPU interacts with memory during program execution.

    Understanding basic memory organization is crucial for optimizing computer performance, managing resources, and designing systems effectively.

    In this explanation, we’ll cover the basic components of memory organization, how memory is typically structured, and the key concepts involved in accessing and managing memory.


    1. Types of Memory

    Memory in a computer can be divided into several types based on its functionality, speed, and volatility:

    Primary Memory (Volatile Memory)

    Primary memory is used to store data that is actively being processed by the CPU. It is volatile, meaning it loses all stored data when the power is turned off.

    • RAM (Random Access Memory):

      • Main memory used by programs during execution.
      • Stores program code, data, and stack information.
      • Two common types of RAM are:
        • Dynamic RAM (DRAM): Slower and cheaper, requires periodic refreshment.
        • Static RAM (SRAM): Faster, more expensive, and doesn't require refreshing.
    • Cache Memory:

      • A smaller, faster type of memory placed closer to the CPU to speed up data access by temporarily storing frequently accessed data.
      • Cache is typically divided into multiple levels (L1, L2, L3). L1 is the fastest and located closest to the CPU, while L2 and L3 are larger and slower but still faster than main memory.

    Secondary Memory (Non-Volatile Memory)

    Secondary memory is used for long-term data storage and retains data even when the power is off.

    • Hard Disk Drives (HDD): Mechanical storage devices used for large-scale data storage.
    • Solid-State Drives (SSD): Faster than HDDs because they use flash memory instead of mechanical components.
    • Optical Disks (CD/DVD), USB drives, and other forms of storage are also considered secondary memory.

    Tertiary and Off-line Storage

    • These are storage systems used for archival or backup purposes, such as tape drives or cloud storage. These are not used directly by the CPU but may be accessed for data retrieval when needed.

    2. Memory Addressing

    Memory addressing refers to how the memory locations are identified and accessed. Each byte of memory is assigned a unique address, and the CPU uses these addresses to read from or write to specific locations in memory.

    Types of Memory Addressing:

    1. Physical Addressing: Refers to the actual address in the physical memory (RAM).
    2. Logical/Virtual Addressing: Refers to the address generated by the CPU when executing a program. Virtual addresses
    Previous topic 15
    Physical Address Calculation
    Next topic 17
    CPU Organization

    Past Papers

    Open this section to load past papers

    Click on Show Past Papers to see past papers.
    On This Page
      Reading Stats
      Est. reading time3 min
      Word count433
      Code examples0
      DifficultyBeginner