Disassembly 101

Introduction

This article briefly explores topics connected to assembly basics, registers, operands, instructions, arithmetic instructions, logical instructions, stack instructions, conditionals and jump instructions. We’ll conclude with a reason why assembly language is still relevant despite the evolution of high-level languages.

This article has been designed for professionals, students or self-learners who want to learn the key aspects of assembly programming. This article will help to give you enough understanding on assembly programming.

Computer programming language

Computer programming language is any one of various languages used for expressing a set of detailed instructions for a digital computer. Programming languages are broadly classified into three categories: machine, assembly and high-level languages.

Machine language

Machine language is also known as machine code. It is a sequence of bit patterns that’s used for providing instructions to the processor of a computer. These sequences of binary digits are not human-readable.

Assembly language 

Assembly language sends codes or instructions to the computer using simple mnemonic abbreviations. Since the codes in assembly language are not directly understood by the computer, a translator is required to convert the instructions into machine language. 

The utility program that converts source code programs from assembly language into machine language, so the Central Processing Unit (CPU) can understand it, is known as an assembler. The reverse conversion of machine language into assembly language is executed by a translator called a disassembler. 

High-level language

High-level languages send codes or instructions to the computer using simple English language words and mathematical symbols. These types of instructions are sometimes referred to as human languages because they are further from machine language. The translators which convert high-level language into machine language are called compilers and interpreters.

Assembly Basics

Structure of a computer system

The basic structure of a computer system is made up of (Read more...)

*** This is a Security Bloggers Network syndicated blog from Infosec Resources authored by Richard Azu. Read the original post at: http://feedproxy.google.com/~r/infosecResources/~3/B87T04Xuhow/

Richard Azu

Richard Azu

Richard has over 16 years of experience in Network/Telecom Engineering. Experienced in the deployment of voice and data over the 3 media; radio, copper and fibre, Richard – a system support technician currently with First National Bank Ghana Limited is still looking for ways to derive benefit from the WDM technology in Optics. Using Kali as a springboard, he has developed an interest in digital forensics and penetration testing.

richard-azu has 5 posts and counting.See all posts by richard-azu