Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.

Slides:



Advertisements
Similar presentations
Computer Structure - Computer Arithmetic Goal: Representing Numbers in Binary  Base 10 (decimal) - Numbers are represented using 10 numerals: 0, 1, 2,
Advertisements

COMP3221: Microprocessors and Embedded Systems--Lecture 7 1 COMP3221: Microprocessors and Embedded Systems Lecture 7: Arithmetic and logic Instructions.
1 Representing Numbers Using Bases Numbers in base 10 are called decimal numbers, they are composed of 10 numerals ( ספרות ) = 9* * *10.
1 Lecture 3 Bit Operations Floating Point – 32 bits or 64 bits 1.
Review Two’s complement

24/06/2015CSE1303 Part B lecture notes 1 Words, bits and pieces Lecture B05 Lecture notes section B05.
Exercise 2.5 If each number is represented with 5 bits, 7 = in all three systems -7 = (1's complement) = (signed magnitude) = (2's.
4-Bit Binary-to-BCD Converter: case Statement
2015/8/221 Data Types & Operators Lecture from (Chapter 3,4)
CS-280 Dr. Mark L. Hornick 1 ASCII table. 2 Displaying Numbers as Text Problem: display numerical values as text Consider the numerical value 0x5A held.
CIS 3260 Introduction to Programming Using C#. Tom Gregory Center for Process Innovation Soccer Referee Boy Scout leader B.S. Computer Science MBA Developer.
Binary, Decimal and Hexadecimal Numbers Svetlin Nakov Telerik Corporation
Information Representation. Reading and References Reading - Computer Organization and Design, Patterson and Hennessy Chapter 2, sec. 2.4, 2.9 (first.
Bits and Bytes. BITWISE OPERATORS Recall boolean logical operators in Java… boolean logical operators: &, |, ^ not: ! Show truth tables.
Bitwise operators. Representing integers We typically think in terms of decimal (base 10) numbers.  Why?  A decimal (or base 10) number consists of.
Bitwise operators. Representing integers We typically think in terms of decimal (base 10) numbers.  Why?  A decimal (or base 10) number consists of.
Bit Operations Horton pp Why we need to work with bits Sometimes one bit is enough to store your data: say the gender of the student (e.g. 0.
// A // --- // F| G |B // --- // E| |C // ---.Dp // D // My LED Functions Scott Nichols.
CSE 351 Number Representation & Operators Section 2 October 8, 2015.
CSE 351 Number Representation. Number Bases Any numerical value can be represented as a linear combination of powers of n, where n is an integer greater.
1 Bits, Bytes, Binary & Hex CIS TAG ▪ Byte Bit.
Binary, Decimal and Hexadecimal Numbers
Bit Operations Horton pp
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Ramblr Making Reassembly Great Again
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Lecture 5 from (Chapter 4, pages 73 to 96)
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
LING 388: Computers and Language
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Bits and Bytes Boolean algebra Expressing in C
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah –
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
CS-401 Computer Architecture & Assembly Language Programming
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
CS-401 Computer Architecture & Assembly Language Programming
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah –
Cosc 2P12 Week 2.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Homework Homework Continue Reading K&R Chapter 2 Questions?
Number Representation & Operators
Comp Org & Assembly Lang
Welcome to: CSC225 Introduction to Computer Organization
Comp Org & Assembly Lang
ARM Bitwise Logic.
Bitwise Operators.
Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail.
Bitwise operators.
CS334: Number Systems Lab 1.
Lecture 2: Bits, Bytes, Ints
MIPS Arithmetic and Logic Instructions
Cosc 2P12 Week 2.
Binary Lesson 7 Review of Binary and Hexadecimal
EECE.2160 ECE Application Programming
Bit Operations Horton pp
Presentation transcript:

Introduction to Intel x86-64 Assembly, Architecture, Applications, & Alliteration Xeno Kovah – 2014 xkovah at gmail

All materials is licensed under a Creative Commons “Share Alike” license. http://creativecommons.org/licenses/by-sa/3.0/ Attribution condition: You must indicate that derivative work "Is derived from Xeno Kovah's ‘Intro x86-64’ class, available at http://OpenSecurityTraining.info/IntroX86-64.html" Attribution condition: You must indicate that derivative work "Is derived from Xeno Kovah's 'Intro x86-64’ class, available at http://OpenSecurityTraining.info/IntroX86-64.html”

Refresher - Data Types In C: char In C: short In C: int/long aka “DWORD” on Windows In C: double/long long aka “QWORD” on Windows ?-> In C: long double? Intel Vol 1 Sec 4.1 - page 4-1 - (All citations will be from the included June 2014 manual, because things move around slightly between revisions)

Refresher - Alt. Radices Decimal, Binary, Hexidecimal If you don’t know this, you must memorize tonight Decimal (base 10) Binary (base 2) Hex (base 16) 00 0000b 0x00 01 0001b 0x01 02 0010b 0x02 03 0011b 0x03 04 0100b 0x04 05 0101b 0x05 06 0110b 0x06 07 0111b 0x07 08 1000b 0x08 09 1001b 0x09 10 1010b 0x0A 11 1011b 0x0B 12 1100b 0x0C 13 1101b 0x0D 14 1110b 0x0E 15 1111b 0x0F

Maybe go practice here? http://forums.cisco.com/CertCom/game/binary_game_page.htm

Refresher - Negative Numbers Negative numbers are defined as the “two’s complement” of the positive number “one’s complement” = flip all bits. 0->1, 1->0 “two’s complement” = one’s complement + 1 0x01 to 0x7F positive byte, 0x80 to 0xFF negative byte 0x00000001 to 0x7FFFFFFF positive dword 0x80000000 to 0xFFFFFFFF negative dword Number One’s Comp. Two’s Comp. (negative) 00000001b : 0x01 11111110b : 0xFE 11111111b : 0xFF : -1 00000100b : 0x04 11111011b : 0xFB 11111100b : 0xFC : -4 00011010b : 0x1A 11100101b : 0xE5 11100110b : 0xE6 : -26 ? 10110000b : 0xB0 : -?

Refresher - Boolean (“bitwise”) logic AND “&” OR “|” XOR “^” 1 1 1 Operands Result NOT “~” 1