Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8944641
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 15, 20262026-06-15T12:04:32+00:00 2026-06-15T12:04:32+00:00

I have learnd Processor Architecture 3 years ago. Until today , I can’t figure

  • 0

I have learnd Processor Architecture 3 years ago.

Until today , I can’t figure out why execute located before memory in the sequential instructions.

While executing the instruction [ mov (%eax) %ebx] , does it needn’t to access memory?

Thanks!

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-15T12:04:32+00:00Added an answer on June 15, 2026 at 12:04 pm

    Let’s remember classic RISC pipeline, which is usually studied: http://en.wikipedia.org/wiki/Classic_RISC_pipeline. Here are its stages:

    • IF = Instruction Fetch
    • ID = Instruction Decode
    • EX = Execute
    • MEM = Memory access
    • WB = Register write back

    In RISC you can only have loads and stores to work with memory. And EX stage for memory access instruction will compute the address in memory (take address from register file, scale it or add offset). Then address will be passed to MEM stage.

    Your example, mov (%eax), %ebx is actually a load from memory without any additional computation and it can be represented even in RISC pipeline:

    • IF – get the instruction from instruction memory
    • ID – decode instruction, pass “eax” register to ALU as operand; remember “ebx” as output for WB (in control unit);
    • EX – compute “eax+0” in ALU and pass result to next stage MEM (as address in memory)
    • MEM – take address from EX stage (from ALU), go to memory and take value (this stage can take several ticks to reach memory with blocking of the pipeline). Pass value to WB
    • WB – take value from MEM and pass it back to register file. Control unit should set the register file into mode: “Writing”+”EBX selected”

    Situation is more complex in true CISC instruction, e.g. add (%eax), %ebx (load word T from [%eax] memory, then store T+%ebx to %ebx). This instruction needs both address computation and addition in ALU. This can’t be easily represented in simplest RISC (MIPS) pipelines.

    First x86 cpu (8086) was not pipelined, it executed only single instruction at any moment. But since 80386 there is pipeline with 6 stages, which is more complex than in RISC. There is presentation about its pipeline, comparing it with MIPS: http://www.academic.marist.edu/~jzbv/architecture/Projects/projects2004/INTEL%20X86%20PIPELINING.ppt

    Slide 17 says:

    • Intel combines the mem and EX stages to avoid loads and stalls, but does create stalls for address computation
    • All stages in mips takes one cycle, where as Intel may take more than one for certain stages. This creates asymmetric performance

    In my example, add will be executed in that combined “MEM+EX” stage for several CPU ticks, generating many stalls.

    Modern x86 CPUs have very long pipeline (16 stages is typical), and they are RISC-like cpus internally. Decoder stages (3 stage or more) will break most complex x86 instructions into series of internal RISC-like micro-operations (sometimes up to 450 microoperations per instruction are generated with help of microcode; more typical is 2-3 microoperations). For complex ALU/MEM operations, there will be microop for address computation, then microop for memory load and then microop for ALU action. Microoperations will have depends between them, and planned to different execution ports.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have learned from various tutorial that If a client can reasonably be expected
I've been trying to figure out what computer field I want to go into
On my little-endian z80-esque processor I have a 32-bit long int msk = 0xFFFFFF00
I am wondering if anyone have any information on development boards where you can
I have some doubts and would appreciate if anyone can help me to understand.
Background I am considering various architecture options. While I have used SQL over the
By writing an annotation processor I can turn any Java text file into an
I have a very simple Toshiba Laptop with i3 processor. Also, I do not
I am trying to improve my embedded C/C++ development on ARM architecture. I have
I have learned how to use Spring MVC 3, but I am very interested

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.