-
Notifications
You must be signed in to change notification settings - Fork 270
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1195 from jayraj175coder/RH
assembly Language complete Resources.
- Loading branch information
Showing
1 changed file
with
337 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,337 @@ | ||
# Assembly | ||
Assembly language is a low-level programming language that is one step above machine code. It provides a symbolic representation of the numeric machine instructions, making it easier for humans to read and write. Here are some key aspects of assembly language: | ||
|
||
Low-Level Language: Assembly language is considered low-level because it is closely related to the hardware's machine code instructions. | ||
|
||
Hardware Specific: Each type of processor has its own assembly language, meaning code written for one type of CPU won't run on another without modification. | ||
|
||
Mnemonic Codes: Instructions are written using mnemonic codes, which are abbreviations of the operation (e.g., MOV for move, ADD for addition). | ||
|
||
Registers and Memory: Programmers have direct control over the CPU's registers and memory addresses. | ||
Efficiency: Code written in assembly language can be highly optimized for performance and efficiency. | ||
|
||
## Table of Contents | ||
|
||
- [Roadmap](#roadmap) | ||
- [Tutorials](#tutorials) | ||
- [Introduction](#introduction) | ||
- [Fundamentals](#fundamentals) | ||
- [Tools and Development Environment](#tools-and-development-environment) | ||
- [IDEs for Assembly](#ides-for-assembly) | ||
- [Version Control](#version-control) | ||
- [YouTube](#youtube) | ||
- [YouTube Channels](#youtube-channels) | ||
- [YouTube Playlists](#youtube-playlists) | ||
- [Courses](#courses) | ||
- [Free Certification Courses](#free-certification-courses) | ||
- [Paid Certification Courses](#paid-certification-courses) | ||
- [Additional Resources](#additional-resources) | ||
- [Assembly Communities](#assembly-communities) | ||
- [Assembly Books](#assembly-books) | ||
- [Assembly Cheatsheets](#assembly-cheatsheets) | ||
- [Conclusion](#conclusion) | ||
|
||
## Roadmap | ||
> Navigate your Assembly learning journey with a structured roadmap designed to guide you from beginner to advanced levels of proficiency. | ||
<table width="100%"> | ||
<tr> | ||
<th>Resource Name</th> | ||
<th>Description</th> | ||
</tr> | ||
<tr> | ||
<td><a href="https://hackr.io/tutorials/learn-assembly-language">Assembly Learning Path</a></td> | ||
<td>A structured guide to help you learn Assembly from basics to advanced topics, provided by the official Assembly documentation.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://github.com/gurugio/lowlevelprogramming-university">Assembly Developer Roadmap</a></td> | ||
<td>An interactive roadmap detailing the skills and technologies required to become a proficient Assembly developer at various stages.</td> | ||
</tr> | ||
</table> | ||
## Tutorials | ||
> Explore a range of tutorials tailored to different skill levels and learning objectives in development. From introductory guides to advanced techniques, these tutorials cover essential concepts and practical examples to help you master in Assembly. | ||
### Introduction | ||
<table width="100%"> | ||
<tr> | ||
<th>Resource Name</th> | ||
<th>Description</th> | ||
</tr> | ||
<tr> | ||
<td><a href="https://hackr.io/tutorials/learn-assembly-language">Introduction to Assembly</a></td> | ||
<td>An overview of what Assembly is, its core concepts, and the advantages of using Assembly for building interactive web applications.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.geeksforgeeks.org/what-is-assembly-language/">Assembly Architecture</a></td> | ||
<td>An exploration of the Assembly architecture, including its reactive data binding system and component-based structure.</td> | ||
</tr> | ||
|
||
<tr> | ||
<td><a href="https://developer.arm.com/documentation/den0013/d/Introduction-to-Assembly-Language">Assembly Ecosystem</a></td> | ||
<td>An overview of the Assembly ecosystem, including libraries, tools, and resources that complement development.</td> | ||
</tr> | ||
</table> | ||
|
||
|
||
### Fundamentals | ||
<table width="100%"> | ||
<tr> | ||
<th>Resource Name</th> | ||
<th>Description</th> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.tutorialspoint.com/assembly_programming/assembly_environment_setup.htm">Assembly Environment Setup</a></td> | ||
<td>Understanding the Assembly instance, its properties, and how it serves as the root of application.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.tutorialspoint.com/assembly_programming/assembly_basic_syntax.htm">Assembly Basic Syntax</a></td> | ||
<td>An introduction to basic syntax templates, which are used to define the structure of components.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.tutorialspoint.com/assembly_programming/assembly_registers.htm">Assembly Registers</a></td> | ||
<td>An overview of Assembly Registers.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.tutorialspoint.com/assembly_programming/assembly_addressing_modes.htm">Addressing modes</a></td> | ||
<td>Explaining the concept of adressing modes in Assembly.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.tutorialspoint.com/assembly_programming/assembly_variables.htm">Variables</a></td> | ||
<td>Understanding the variables.</td> | ||
</tr> | ||
|
||
</table> | ||
|
||
## Tools and Development Environment | ||
> Discover a variety of tools and development environments that facilitate Assembly , streamline your workflow, and enhance productivity. | ||
### IDEs for Assembly | ||
<table width="100%"> | ||
<tr> | ||
<th>Resource Name</th> | ||
<th>Description</th> | ||
</tr> | ||
<tr> | ||
<td><a href="https://runcode.io/assembly-online-coding-platform">Runcode</a></td> | ||
<td>Runcode with Extension Pack for enhancing development.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.teamten.com/lawrence/projects/assembly-language-ide/">Teamten</a></td> | ||
<td>Teamten by JetBrains, offering advanced support with features like code completion, navigation, and debugging.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.jetbrains.com/idea/download/?section=windows">Jetbrains</a></td> | ||
<td>Jetbrains with plugins for syntax highlighting, snippets, and linting to improve the development experience.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.sublimetext.com/">Sublime Text</a></td> | ||
<td>Sublime Text packages for enhanced editing capabilities support.</td> | ||
</tr> | ||
</table> | ||
|
||
|
||
## Version Control | ||
|
||
> Version control, also known as source control, is the practice of tracking and managing changes to software code. Version control systems are software tools that help software teams manage changes to source code over time. | ||
<table width="100%"> | ||
<tr> | ||
<th>Resource Name</th> | ||
<th>Description</th> | ||
</tr> | ||
<tr> | ||
<td><a href="https://git-scm.com/doc">Official Git Documentation</a></td> | ||
<td>Comprehensive official documentation for Git, covering installation, basic concepts, and advanced usage.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.atlassian.com/git/tutorials">Atlassian Git Tutorials</a></td> | ||
<td>Detailed tutorials from Atlassian on Git basics, including commands and workflows.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://docs.github.com/en/repositories/creating-and-managing-repositories/about-repositories">GitHub Docs - About Repositories</a></td> | ||
<td>An overview of GitHub repositories, including how to create and manage them.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.git-scm.com/book/en/v2/Git-Basics-Recording-Changes-to-the-Repository">Pro Git Book - Recording Changes</a></td> | ||
<td>A chapter from the Pro Git book that covers making commits, viewing commit history, and more.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.atlassian.com/git/tutorials/using-branches">Atlassian Git Tutorials - Using Branches</a></td> | ||
<td>An in-depth tutorial on creating, using, and merging branches in Git.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Merging">Pro Git Book - Branching and Merging</a></td> | ||
<td>A chapter from the Pro Git book that covers the basics of branching and merging in Git.</td> | ||
</tr> | ||
</table> | ||
|
||
## Youtube | ||
> The "YouTube" section features a compilation of YouTube channels and playlists dedicated to Assembly. These resources offer a wealth of video content, including tutorials, walkthroughs, live coding sessions, and discussions, making them valuable learning resources for developers interested in Assembly. | ||
### YouTube Channels | ||
<table width="100%"> | ||
<tr> | ||
<th>Resource Name</th> | ||
<th>Description</th> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.youtube.com/watch?v=gfmRrPjnEw4">Free Code Camp</a></td> | ||
<td>FreeCodeCamp offers comprehensive Assembly tutorials covering everything from basic concepts to advanced techniques, with clear explanations and practical examples.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.youtube.com/watch?v=zEuvNYe7WG0">RasMurtech</a></td> | ||
<td>The Rasmurtech provides easy-to-follow Assembly tutorials suitable for beginners, covering all topics.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.youtube.com/playlist?list=PL3SAXYUEnrabDbKeOiJnLDRRWzIFg9pIn">Zeeshan Academy</a></td> | ||
<td>Zeeshan Academy offers in-depth Assembly tutorials and courses taught by industry experts, covering various aspects of the development.</td> | ||
</tr> | ||
</table> | ||
|
||
### YouTube Playlists for Learning Assembly | ||
<table width="100%"> | ||
<tr> | ||
<th>Resource Name</th> | ||
<th>Description</th> | ||
</tr> | ||
<tr> | ||
<td><a href="https://youtube.com/playlist?list=PLR2FqYUVaFJpHPw1ExSVJZFNlXzJYGAT1&si=fFGzRxP0tKKGSm6l">Programology</a></td> | ||
<td>This playlist offers a comprehensive Assembly course for beginners, covering fundamental concepts and building practical projects step by step.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.youtube.com/watch?v=Ehy4Cnx4Xr8&list=PL3SAXYUEnrabDbKeOiJnLDRRWzIFg9pIn">Assembly Crash Course</a></td> | ||
<td>Discover the core features of Assembly in this crash course playlist, ideal for developers looking to quickly get started with the development.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://youtube.com/playlist?list=PLmxT2pVYo5LB5EzTPZGfFN0c2GDiSXgQe&si=-YQ4UUcAnrQkhfyN">Assembly Advanced Tutorials</a></td> | ||
<td>Explore advanced Assembly concepts and techniques in this playlist </td> | ||
</tr> | ||
</table> | ||
|
||
## Courses | ||
> The "Courses" section provides a curated list of both free and paid online courses dedicated to Assembly. These courses cover a wide range of topics, from fundamental concepts to advanced techniques, catering to learners of all levels, whether they are beginners looking to get started with Assembly or experienced developers seeking to deepen their expertise. | ||
### Free Certification Courses | ||
<table width="100%"> | ||
<tr> | ||
<th>Resource Name</th> | ||
<th>Description</th> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.udemy.com/course/arm-cortex-m-assembly-programming/">Assembly Complete Course for Beginners</a></td> | ||
<td>A comprehensive course for beginners to learn Assembly, covering basic to advanced concepts.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.codecademy.com/learn/computer-architecture-assembly-language">Assembly Fundamentals</a></td> | ||
<td>Explore the fundamental concepts of Assembly through this free course offered by Code Academy.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.udemy.com/course/introduction-to-assembly-programming-with-arm/">Assembly 2 Basics in Just 1 Hour</a></td> | ||
<td>Learn the basics of Assembly in just an hour with this free course provided by Great Learning.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.udemy.com/course/write-the-first-assembly-program-and-run-it-on-emulator/">Mongo with nodeJS</a></td> | ||
<td>Discover how to secure applications using Auth0 authentication in this free course.</td> | ||
</tr> | ||
</table> | ||
|
||
### Paid Certification Courses | ||
<table width="100%"> | ||
<tr> | ||
<th>Resource Name</th> | ||
<th>Description</th> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.udemy.com/course/assembly-language-programming/?utm_source=adwords&utm_medium=udemyads&utm_campaign=LongTail_la.EN_cc.INDIA&campaigntype=Search&portfolio=India&language=EN&product=Course&test=&audience=DSA&topic=&priority=&utm_content=deal4584&utm_term=_._ag_77882236223_._ad_533220806561_._kw__._de_c_._dm__._pl__._ti_dsa-1007766171032_._li_1007788_._pd__._&matchtype=&gad_source=1&gclid=Cj0KCQjw97SzBhDaARIsAFHXUWCB0p28NRrXpOmTNyo0uDUfBcIvx_ZpUgQGX7RHNdSc8BV34b36e94aAiNvEALw_wcB&couponCode=IND21PM">The Complete Assembly Course</a></td> | ||
<td>This comprehensive course covers everything you need to know about Assembly, from basics to advanced topics.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.classcentral.com/course/udemy-assembly-best-271655">Assembly 2 - The Complete Guide</a></td> | ||
<td>Learn Assembly 2 thoroughly with this complete guide, covering all aspects of Assembly development.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.udemy.com/course/the-complete-Assembly-course/">Assembly Certification</a></td> | ||
<td>Earn a certification in Assembly by completing this comprehensive course that covers Assembly fundamentals and advanced concepts.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.classcentral.com/course/udemy-assembly-26534">The Assembly 3 Master Class</a></td> | ||
<td>Master Assembly 3 with this advanced course that dives deep into the latest features and best practices of Assembly development.</td> | ||
</tr> | ||
</table> | ||
|
||
## Additional Resources | ||
> The "Additional Resources" section typically includes various supplementary materials, communities, books, and other resources that can further enhance one's understanding and proficiency in Assembly. These resources often include online forums, discussion groups, social media communities, books, blogs, newsletters, and podcasts focused on development. | ||
|
||
### Assembly Communities | ||
<table width="100%"> | ||
<tr> | ||
<th>Resource Name</th> | ||
<th>Description</th> | ||
</tr> | ||
<tr> | ||
<td><a href="https://study.com/academy/lesson/community-assembly-theory-in-ecology.html">Assembly Forum</a></td> | ||
<td>Join the Assembly Forum community to connect with other developers, ask questions, and share your knowledge and experiences.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.reddit.com/r/Assembly/">Assembly Subreddit</a></td> | ||
<td>Explore the Assembly Subreddit community to stay updated with the latest news, articles, tutorials, and discussions related to Assembly.</td> | ||
</tr> | ||
</table> | ||
|
||
### Assembly Books | ||
<table width="100%"> | ||
<tr> | ||
<th>Resource Name</th> | ||
<th>Description</th> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.amazon.in/Modern-X86-Assembly-Language-Programming/dp/1484240626?ref_=Oct_d_omwf_d_14447038031_5&pd_rd_w=3uAu1&content-id=amzn1.sym.de333ec2-cb26-4eb2-89f4-c47e9026b6e6&pf_rd_p=de333ec2-cb26-4eb2-89f4-c47e9026b6e6&pf_rd_r=479BH3M9B4H1VM1AJ1EV&pd_rd_wg=RoxTa&pd_rd_r=d3668978-d396-40b0-a0c9-fff0452bd5f6&pd_rd_i=1484240626">Assembly: Up and Running: Building Accessible and Performant Web Apps</a></td> | ||
<td>Explore "Assembly: Up and Running" to learn how to build accessible and performant web applications using Assembly.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.amazon.in/Art-Assembly-Language-2e/dp/1593272073?ref_=Oct_d_omwf_d_14447038031_2&pd_rd_w=3uAu1&content-id=amzn1.sym.de333ec2-cb26-4eb2-89f4-c47e9026b6e6&pf_rd_p=de333ec2-cb26-4eb2-89f4-c47e9026b6e6&pf_rd_r=479BH3M9B4H1VM1AJ1EV&pd_rd_wg=RoxTa&pd_rd_r=d3668978-d396-40b0-a0c9-fff0452bd5f6&pd_rd_i=1593272073">Building Applications with Spring 5 and Assembly 2</a></td> | ||
<td>Discover "Building Applications with Spring 5 and Assembly 2" to understand how to integrate Assembly with Spring 5 for building robust web applications.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.amazon.com/NoSQL-Assembly-Hours-Teach-Yourself-ebook/dp/B00MY5KWTS?dchild=1&keywords=Assembly&qid=1628535218&sr=8-17&linkCode=sl1&tag=solutionsre04-20&linkId=6ab3146bcc746ae6d9b17e76594bd1e2&language=en_US&ref_=as_li_ss_tl">Build amazing apps with Vue 3</a></td> | ||
<td>Check out "Build amazing apps with Vue 3" to master Assembly 3 and create exceptional web applications.</td> | ||
</tr> | ||
</table> | ||
|
||
|
||
### Assembly Cheatsheets | ||
|
||
<table> | ||
<tr> | ||
<th>Resource Name</th> | ||
<th>Description</th> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.technocamps.com/wp-content/uploads/V3_AssemblyLanguage_CheatSheetEN.pdf">Assembly cheatsheet</a></td> | ||
<td>A cheatsheet for Assembly.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://www.jk-quantized.com/experiments/HomebrewComputer/Cheatsheets/hackASM.html">Get the Ultimate Assembly Cheat Sheet</a></td> | ||
<td>The ultimate cheat sheet for Assembly provided by Mastery.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://ikrima.dev/dev-notes/assembly/asm-cheatsheet/">The Ultimate Assembly Cheat Sheet</a></td> | ||
<td>An extensive Assembly cheat sheet covering various aspects.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://onecompiler.com/cheatsheets/assembly">Assembly cheat sheet 3 (advanced)</a></td> | ||
<td>An advanced Assembly cheat sheet.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://cheatography.com/tag/assembly/">Assembly Cheat Sheet </a></td> | ||
<td>A version of the Assembly cheat sheet.</td> | ||
</tr> | ||
<tr> | ||
<td><a href="https://cs.brown.edu/courses/cs033/docs/guides/x64_cheatsheet.pdf">Assembly - Cheat Sheets</a></td> | ||
<td>Cheat sheets for Assembly.</td> | ||
</tr> | ||
</table> | ||
|
||
|
||
## Conclusion | ||
|
||
Assembly documentation provides a comprehensive guide for developers to learn and master Assembly, a progressive database for building managing and storing data. | ||
|
||
Whether you're a beginner or an experienced developer, Assembly documentation equips you with the knowledge and skills to build powerful and interactive web applications. |