A low-level programming language is a programming language that provides little or no abstraction from a computer's instruction set architecture—commands or functions in the language map closely to processor instructions. Generally this refers to either machine code or assembly language. The word "low" refers to the small or nonexistent amount of abstraction between the language and machine language; because of this, low-level languages are sometimes described as being "close to the hardware". Programs written in low-level languages tend to be relatively non-portable
At ALX, there are several sprints to become a full stack software engineer. One of those sprints is the low level programming track which covers the following:
- Compilation
- Commenting code and following a coding style standard
- Variables, types, operators, expressions, loops, nested loops
- Conditional statements
- Functions
- Pre-processor, macros, header files, pointers, double pointers, function pointers, pointer arithmetic
- Makefiles
- Sorting and search algorithms and more!
- Ubuntu 20.04 LTS
- gcc (-Wall, -Werror, -Wextra, and -pedantic flags)
- 0x00-hello_world
- 0x01-variables_if_else_while
- 0x02-functions_nested_loops
- 0x03-debugging
- 0x04-more_functions_nested_loops
- 0x05-pointers_arrays_strings
- 0x06-pointers_arrays_strings
- 0x07-pointers_arrays_strings
- 0x08-recursion
- 0x09-static_libraries
- 0x0A-argc_argv
- 0x0B-malloc_free
- 0x0C-more_malloc_free
- 0x0D-preprocessor
- 0x0E-structures_typedef
- 0x0F-function_pointers
- 0x10-variadic_functions
- 0x12-singly_linked_lists
- 0x13-more_singly_linked_lists
- 0x14-bit_manipulation
- 0x15-file_io
- 0x17-doubly_linked_lists
- 0x18-dynamic_libraries
- 0x1A-hash_tables
- 0x1C-makefiles
- 0x1E-search_algorithms
- Writing Clean & Effective Code
- From Zero to Pointer Hero
- Crackme 101
- In A Twist For A While
- Crackme Open
- Russian Dolls of Programming
- Dynamic Memory Allocation In C
- Variadic Functions Explained
- Crackme Open, Twice!
- Technical Interview Preparation
- Crackme Open, Again?
- Win Mega Millions!
- Dynamic libraries article coming out soon!!
Collaborators are acknowledged within each project