Assembly language

Assembly language

Assembly language is a low-level programming language that closely corresponds to a computer's machine code instructions. It is specific to a particular computer architecture and is converted into executable machine code by an assembler. While assembly language was once commonly used for both systems programming and application programming, the majority of programming is now done in higher-level languages for increased productivity and simplicity. However, small amounts of assembly language code may still be used within larger systems for performance reasons or to interact directly with hardware.

3 courses cover this concept

CS 131: Fundamentals of Computer Systems

Brown University

Spring 2020

This course delves deep into the foundational principles behind computer systems, ranging from hardware intricacies to the vast global internet. Students gain insights into systems programming, the architecture of computer systems, concurrency, and the dynamics of distributed systems. Notably, the curriculum includes projects that offer hands-on experience, like building library functions, creating a toy OS, and designing a scalable key-value storage service. It's a stepping stone to advanced courses like Distributed Systems, Databases, and Computer Systems Security.

No concepts data

+ 35 more concepts

CSCI 0300: Fundamentals of Computer Systems

Brown University

Spring 2023

Introductory course covering computer system fundamentals including machine organization, systems programming in C/C++, operating systems concepts, isolation, security, virtualization, concurrency, and distributed systems. Projects involve implementing core OS functionality.

No concepts data

+ 32 more concepts

CS 61C Great Ideas in Computer Architecture (Machine Structures)

UC Berkeley

Fall 2022

This course deepens students' understanding of computer architecture and the translation of high-level programs into machine language. Emphasis is on C and assembly language programming, computer organization, parallelism, CPU design, and warehouse-scale computing. Prerequisites include CS61A and CS61B or equivalent C-based programming experience.

No concepts data

+ 51 more concepts