YoVDO

C Programming and Assembly Language

Offered By: Indian Institute of Technology Madras via Swayam

Tags

Computer Science Courses Programming Languages Courses C Programming Courses Assembly Language Courses

Course Description

Overview

Students who complete their bachelors degree (BE/ BTech) in computer science or electrical engineering do extensive course work in Microprocessors and then in C programming. However, what is missing in the current curriculum is to explicitly establish the link between the two. Specifically we look at how a C program is translated to assembly language and how it eventually gets executed on a microprocessor. Through, animations we show what happens in the stack, data and code segment, of the microprocessor when a C program is executed. INTENDED AUDIENCE: Any Interested Learners PRE-REQUISITES:Students are expected to have done a course on C programming and Microprocessors INDUSTRY SUPPORT: Almost all software companies and many hardware companies

Syllabus

WEEK 1: Introduction to Microprocessors and Assembly language Programming Microprocessor Architecture Machine Language Execution sequence in a MuP Memory in a microprocessor Instruction Set ADDRESSING SCHEMES MOV ARITHMETIC AND LOGICAL INSTRUCTIONS FLAG REGISTER STACK INSTRUCTIONS CALL and RET HARDWARE LOOPS WEEK 2: Introduction to C and Inline Assembly Data types and their sizes Simple examples of Inline assembly ALU operations String length Multiplication using repeated addition Swap two variables in C Swap two variables in inline Assembly Function to swap two variable in C Inline code to swap the two variables using a function WEEK3: Compiling C to Assembly Language Compiling a simple program to Assembly – first order Passing parameters Prologue Epilogue Local variables WEEK4: C++ and Some special Functions C and C++ at assembly language level Recursion vs Loops with factorial as example Special functions memcpy strlen

Taught by

Prof. Janakiraman Viraraghavan

Tags

Related Courses

3D Art and Audio Pipeline
Unity via Coursera
3D Interactions and Navigation
Unity via Coursera
ABC du langage C
Institut Mines-Télécom via France Université Numerique
Abstraction, Problem Decomposition, and Functions
University of Colorado System via Coursera
Add Gore to Your Game in Unity
Coursera Project Network via Coursera