Processor Addressing Modes

Sdílet
Vložit
  • čas přidán 8. 07. 2024
  • This video describes the anatomy of a machine code instruction and the way the bits of the central processing unit’s current instruction register are allocated to the operation code and the operands. The impact of this on the size of the processor’s instruction set is highlighted. The video then describes the need for different processor addressing modes, and includes illustrations of the most common addressing modes including immediate addressing, direct addressing, indirect addressing, register direct addressing, register indirect addressing, relative addressing and indexed addressing. Examples of these addressing modes are illustrated in terms of the way main memory is accessed during the fetch-decode-execute cycle, including the role of various registers including the memory address register, memory data register, program counter and index register.

Komentáře • 110

  • @dodziraynard
    @dodziraynard Před 3 lety +46

    Straight to the point. Trying to understand this for days. Thank you, Prof.

  • @joseblua6566
    @joseblua6566 Před 2 lety +3

    It amazes me how clear you make the topics you explain , thank you!

  • @deckarep
    @deckarep Před 2 lety +5

    Your teaching style is so consistent, to-the-point and well explained. Super impressed with your channel!

  • @CreativiTimothy
    @CreativiTimothy Před 5 měsíci +4

    My instructor actually includes your videos as part of the computer organization and architecture course! I love your videos. Very-well explained and amazing visual diagrams!

  • @khdhirimohamedamine
    @khdhirimohamedamine Před 3 lety +2

    nothing to say except exeptional teaching, everything is clear and easy to understand thanks to your help my respect to you good sir

  • @MTRFRK
    @MTRFRK Před rokem +1

    Thank you for this amazing explanation

  • @Sheeeeshack
    @Sheeeeshack Před 4 dny

    My deepest gratitudes. You are amazing, indeed. 🙏🌹

  • @sebastianviruzab7986
    @sebastianviruzab7986 Před 4 lety +1

    Thank you so much i have digital microsystems design exam 3 hours from now this saved me a ton of time

  • @shashikalaraju5769
    @shashikalaraju5769 Před 4 lety +15

    The best video so far about addressing modes. Thanks

  • @inflem9860
    @inflem9860 Před 2 lety +2

    Your videos are really helpful. Thank you so much 💙

  • @mnavarrotube
    @mnavarrotube Před 3 měsíci

    Brilliant explanations. Thanks!

  • @gzeta2251
    @gzeta2251 Před rokem

    Its like i am hearing some english course dialogue for my studies lol, love how u explain. new subscriber from argentina

  • @itsunclestephen
    @itsunclestephen Před rokem +1

    Excellent explanation. Thank you so very much!

  • @striderwhite5197
    @striderwhite5197 Před rokem +1

    Clear and concise. Thank you.

  • @nomyfan
    @nomyfan Před rokem

    It's helpful! Thank you!

  • @Dragonblaster1
    @Dragonblaster1 Před 5 lety +6

    This so takes me back to Microprocessor Programming when I was at college in the early 1980s. It was the Motorola 6502 then. But like clockwork, as soon as I saw that hash sign I thought "immediate mode". Funny how it comes back after all these years, and I went into electronics rather than computers. I also remember "accumulator", "zero page [register]", "indirect indexed" and "indexed indirect" addressing modes.

    • @ComputerScienceLessons
      @ComputerScienceLessons  Před 5 lety +6

      Funny how we still teach this today. The concepts are still the basis for most machine architectures. Roll on quantum computers!

    • @Dragonblaster1
      @Dragonblaster1 Před 5 lety +1

      @@ComputerScienceLessons Yes, it's amazing that so much of what I learned 35 years ago in a rapidly-evolving technical field is still relevant today.

  • @govegan6682
    @govegan6682 Před 4 lety +2

    Extremely helpful thank you!

  • @reynaldo2232
    @reynaldo2232 Před 4 lety +1

    Thank you.

  • @212nforce
    @212nforce Před 5 lety +3

    Thank you, clear explanation. very much interested to see more videos from Kevin Drumm

  • @souviksarkar2k3
    @souviksarkar2k3 Před rokem +1

    Top notch explanation. I loved it.

  • @k.sshankar7821
    @k.sshankar7821 Před 4 lety +1

    Thank you. This was very useful.

  • @mrboyban
    @mrboyban Před 3 lety +1

    This channel is most regarded than a top UK uni. Many thanks

  • @andresbreuer
    @andresbreuer Před 3 lety +1

    Brillanttly Explained. Thx!!

  • @MusaYmc
    @MusaYmc Před 5 lety +2

    ty mr.saint, u are the best!

  • @r.i.j.brighton716
    @r.i.j.brighton716 Před rokem +2

    Really well presented 💯

  • @nandhiniselvaraj429
    @nandhiniselvaraj429 Před 7 měsíci +1

    Crystal clear explanation sir continue this teaching❤

  • @BlahBlah-zr8ie
    @BlahBlah-zr8ie Před 3 měsíci +1

    this man saved me

  • @المهلكة
    @المهلكة Před rokem

    thank you sir

  • @soniarahal6413
    @soniarahal6413 Před 2 lety +1

    awesome explanations

  • @user-ew6dw8jh7l
    @user-ew6dw8jh7l Před 3 lety +1

    Thanks ❤️❤️

  • @iosifpuha6114
    @iosifpuha6114 Před rokem

    clearest man on earth probably.

  • @dumbguy2y463
    @dumbguy2y463 Před rokem

    Question: how did processors like the 6502 change addressing modes if they had no space in an instruction for addressing mode?

  • @arefazizpour9217
    @arefazizpour9217 Před 3 lety +1

    That was very clear and helpful
    Thank you sir.

  • @efeuzel1399
    @efeuzel1399 Před 4 lety

    Thank you. I couldn't understand indirect addressing fully until I watched this.

  • @BeyondCuriosity
    @BeyondCuriosity Před 3 lety +4

    You sir are a god among men. 🙏🙏

  • @silenthill8312
    @silenthill8312 Před 2 lety +1

    You are a life saver

  • @user-dt2zm2sq4h
    @user-dt2zm2sq4h Před 4 lety +1

    what is the size of a memory that can be accessed using
    immediate mode

  • @maryraz1464
    @maryraz1464 Před 2 lety +1

    Thank you so much, Professor. It was great. May I have your power point slides?

  • @matthewmorrison2071
    @matthewmorrison2071 Před 3 lety +1

    This video helped a bunch thanks bro

  • @rakoonberry7879
    @rakoonberry7879 Před 3 lety +2

    If only my professor was as good at explaining this as you are, smh. Keep it up :)

  • @ipadandme211
    @ipadandme211 Před 2 lety +5

    He is speaking like he is reading a 📚 novel or fantasy series hahahah

  • @mclacex1
    @mclacex1 Před 4 měsíci +1

    Question!
    how do you know what addressing mode is being used by the opcode based on the bits ?
    i see that 2 bits are allocated to it but how do you know what mode it specifies? i been looking everywhere for a answer and im struggling to get one!

  • @leoking3235
    @leoking3235 Před rokem

    Excellent explanation, but one query I'm not sure about. In 6:10, you show that the value in the PC is 101, but you show the "BR +3" instruction at address 100. If that's the case, how does the PC read the instruction "BR +3" when it's at the previous address?

    • @gnir6518
      @gnir6518 Před rokem +1

      The program counter stores the address of the next instruction to execute, which is in 101.
      The instruction currently being executed is at address 100.

    • @leoking3235
      @leoking3235 Před rokem

      @@gnir6518 thank you!

  • @ijazkhanniazi800
    @ijazkhanniazi800 Před 2 lety +1

    Thanks 😊

  • @escalerae111
    @escalerae111 Před 2 lety +1

    How is this channel not bigger

  • @wonderbuddy3204
    @wonderbuddy3204 Před 2 lety

    register direct addressing mode: if the operand is stored in a register, it is known as register direct addressing mode(FASTEST)
    register indirect addressing mode: if the register contains the MEMORY LOCATION of the value, it is known as register addressing mode.
    immediate addressing mode: when the operand of an instruction is the actual value to be operated on, it is known as immediate addressing mode
    direct addressing: if the operand is the memory address that contains the value to be operated on, it is known as direct addressing
    indirect addressing mode: if the operand is a memory address of the LOCATION that contains the memory address, it is known as indirect addressing mode(memory has to be accessed TWICE)
    * NOTE: accessing the memory is more time consuming than accessing registers

  • @icebeardoesnttalkmuch8919

    At 1:10 you said "Fewer bits for the operand code means that (Fewer memory locations can be accessed directly)" the part that i have written in brackets< what does it means, the term directly has always left me confusing like what is "directly"? Can you please explain that? Thanks.

    • @ComputerScienceLessons
      @ComputerScienceLessons  Před 2 lety

      Perhaps the video I uploaded yesterday about RISC and CISC will help (link below). Suppose you have an instruction which adds a value to contents of the accumulator. The operand of the instruction could be the actual value you want to add, so ADD #25 means add the number 25 to the contents of the accumulator. This is called 'immediate addressing'. If however the operand was a memory address of a location in memory that contained the value to add, this is called 'direct addressing'. So ADD 25 means the value to add can be found in location 25. When I say "fewer memory locations can be accessed directly", I mean that fewer memory locations can be accessed with direct addressing.
      czcams.com/video/6Rxade2nEjk/video.html :)KD

  • @trixiemaya99
    @trixiemaya99 Před 3 lety

    How is register-direct mode is faster than immediate mode?

  • @Ensign_Cthulhu
    @Ensign_Cthulhu Před 4 lety +1

    Questions:
    1) What sort of computer might we be carrying these instructions out on?
    2) WHY is register-direct addressing faster than going to the memory? Are the registers themselves not RAM in their own particular way? Or does it change things in that they are on the main processor chip?
    3) What are the factors that would make you choose one particular method over the others, especially if it comes with downsides?

    • @sanidhyas3s
      @sanidhyas3s Před rokem

      (Answer to 2)
      Basically because the ALU cannot directly connect with the memory and would need the Memory Data Register in between to do the Data Transfer.

  • @vimukthaariyasinghe8041
    @vimukthaariyasinghe8041 Před 4 lety +1

    Super super super usefull....amazing

  • @julioforessi1336
    @julioforessi1336 Před 2 lety +1

    I love you man

  • @Decco6306
    @Decco6306 Před 3 lety

    IM going to guess you are referring to the MIPS archetecture

  • @guliyevshahriyar
    @guliyevshahriyar Před rokem +1

    thx

  • @nandhiniselvaraj429
    @nandhiniselvaraj429 Před 7 měsíci +1

    Super sir ❤

  • @thatchapthere
    @thatchapthere Před 4 lety +10

    Sounds like the voice of Thomas the Tank Engine.

  • @sababugs1125
    @sababugs1125 Před 3 lety

    How does the processor know what is data and what is an operation ?

    • @icebeardoesnttalkmuch8919
      @icebeardoesnttalkmuch8919 Před 2 lety

      a few bits are reserved one or two tell the processor that if the contents fetched are to be treated as an actual value or as an address value

  • @jimmydarkful
    @jimmydarkful Před 4 lety +1

    fantastic

  • @MOMO-YYDS
    @MOMO-YYDS Před 8 měsíci

  • @greekmotivation589
    @greekmotivation589 Před 3 lety

    are you not accessing memory when fetching nr 100 aswell? Won't indirect access memory 3 times

  • @kolibri5861
    @kolibri5861 Před 3 lety +2

    where are your references please?

  • @richliou22
    @richliou22 Před rokem

    Von Neumann or Harvard architecture portrayed here?

    • @ComputerScienceLessons
      @ComputerScienceLessons  Před rokem

      This is Von Neumann. I have covered Harvard in this video czcams.com/video/4nY7mNHLrLk/video.html :)KD

  • @saganandroid4175
    @saganandroid4175 Před 2 lety

    Your title fails to identify which processor you are talking about. ARM? 6502? 680X0? X86? PowerPC?

    • @ComputerScienceLessons
      @ComputerScienceLessons  Před 2 lety

      I wanted to stick with generic concepts :)KD

    • @saganandroid4175
      @saganandroid4175 Před 2 lety

      @@ComputerScienceLessons that's absurd. Instructions and address modes are specific to each processor family. And when very similar instructions do exist, the mnemonic names and register names will differ.

  • @6thex6663s
    @6thex6663s Před 3 lety

    foreign jay z teaches computer architecture

  • @sida_g567
    @sida_g567 Před 3 lety +1

    lets get lost tonight

    • @ComputerScienceLessons
      @ComputerScienceLessons  Před 3 lety +1

      ?

    • @sida_g567
      @sida_g567 Před 3 lety +1

      @@ComputerScienceLessons getting high with asm i downloaded nasm in wsl pretty cool stuff loadin some register and shit trippin bruh