Holbertonschool-low_level_programming

"Holberton Logo"

Low Level Programming & Algorithms

Welcome

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

Table of Contents

About

At Holberton School, there are several tracks to become a full stack software engineer. One of those tracks 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!

Requirements

  • Ubuntu 14.04 LTS
  • gcc 4.8.4 (-Wall, -Werror, -Wextra, and -pedantic flags)

Projects

  1. 0x00-hello_world
  2. 0x01-variables_if_else_while
  3. 0x02-functions_nested_loops
  4. 0x03-more_functions_nested_loops
  5. 0x04-pointers_arrays_strings
  6. 0x05-pointers_arrays_strings
  7. 0x06-pointers_arrays_strings
  8. 0x07-recursion
  9. 0x08-static_libraries
  10. 0x09-argc_argv
  11. 0x0A-malloc_free
  12. 0x0B-more_malloc_free
  13. 0x0C-preprocessor
  14. 0x0D-structures_typedef
  15. 0x0E-function_pointers
  16. 0x0F-variadic_functions
  17. 0x10-printf ** printf project **
  18. 0x11-singly_linked_lists
  19. 0x12-more_singly_linked_lists
  20. 0x13-bit_manipulation
  21. 0x14-file_io
  22. 0x15-simple_shell ** C Shell project **
  23. 0x16-doubly_linked_lists
  24. 0x17-dynamic_libraries
  25. 0x18-stacks_queues_lifo_fifo ** Monty ByteCode Interpreter **
  26. 0x19-hash_tables
  27. 0x1A-sorting_algorithms ** Sorting algorithms project **
  28. 0x1B-makefiles **

Credits

Collaborators are acknowledged within each project