0% found this document useful (0 votes)
12 views

OS Presentation

The document discusses x86-64 assembly language and provides details about registers, sub-registers, conditional branching, and the stack and procedures in x86 assembly. It notes that the x86 architecture has data and pointer registers that are divided into smaller sub-registers. It also describes how conditional branching instructions are only processed when specific conditions are met based on operands. Finally, it explains that the stack is used to store data and procedures can be called using the call instruction, which pushes the return address onto the stack.

Uploaded by

Shivam Dahifale
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views

OS Presentation

The document discusses x86-64 assembly language and provides details about registers, sub-registers, conditional branching, and the stack and procedures in x86 assembly. It notes that the x86 architecture has data and pointer registers that are divided into smaller sub-registers. It also describes how conditional branching instructions are only processed when specific conditions are met based on operands. Finally, it explains that the stack is used to store data and procedures can be called using the call instruction, which pushes the return address onto the stack.

Uploaded by

Shivam Dahifale
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 10

Operating System

Case Study on x86-64


Assembly language

Vishwakarma Institute of Information Technology


Name PRN No. Roll No.
Om Badakh 22110011 331006

Shivam Dahiphale 22110234 331015

Abhishek Deore 22110052 331018


INTRODUCTION
Registers
• Each CPU has a set of registers that are the fastest components of the computer .

• They are very less in size .

• The two main type of registers in the x86 architecture are Data and Pointer registers

Data Registers : Used for storing instructions / syscall arguments .

Pointer Registers : Used for storing specific important address pointers .


Sub Registers • Each 64 bit register can be divided in smaller sub-registers
containing lower bits .

• Each sub-register can be accessed on its own .

• We don't have to consume all the 64 bits if the data is less than 64
bits.
Conditional Branching

• Conditional Branching are like


conditional statements in
higher level languages.

• Conditional Branching instructions are only


processed when a specific condition is met,
based on the Destination and Source
operands.
Stack and Procedures

• The stack is a segment of memory


allocated for the program to store data
Stack and Procedures

• Procedures are set of instructions to be executed at specific


points of the program.

• We can call procedure using call instruction.

• The call instruction pushes (i.e., saves) the next instruction


pointer rip to the stack and then jumps to the specified
procedure.

• The ret instruction pops the address at the top of the stack
into rip
REFERENCES
• https://academy.hackthebox.com

You might also like