We may earn an affiliate commission when you visit our partners.
Course image
Course image
edX logo

Assembler Language

Alec Engebretson and Mark Meysenburg

Computing involves processing information. In order to be processed, information must be represented in such a way that it can be manipulated by a machine ubiquitous in today’s society - the computer.

Read more

Computing involves processing information. In order to be processed, information must be represented in such a way that it can be manipulated by a machine ubiquitous in today’s society - the computer.

**** The computer is a physical device that is based on binary digital logic. From this logic, physical components (hardware) such as memory and processors are designed. These components must fetch, execute and respond to given instructions (software).

This course provides a foundation in the organization and operation of a digital electronic computer starting with the binary digital logic used to represent information and build hardware components. Then, upon this foundation will be built the skills necessary to solve programs through assembly language programs. High-level language algorithms will provide the blueprints for the assembly language solutions.

Specifically, in successfully completing this course you will be able to:

  • Describe how computers represent information and apply this knowledge in solving problems with solutions written in assembly language.

  • Describe the basic organization of a computer system in terms of binary digital hardware components and apply this knowledge in solving problems with solutions written in assembly language.

  • Describe how instructions are fetched and executed using the digital components and apply this knowledge in solving problems with solutions written in assembly language.

  • Design and create assembly language programs that are solutions to problems expressed with algorithms that include high-level language concepts such as variables, data types, repetition, selection, and objects.

What's inside

Learning objectives

  • Foundations of computer organization
  • Information representation
  • Von neumann architecture
  • Storage hierarchy
  • Data types and variables in assembly language
  • Repetition in assembly language
  • Pre-test repetition
  • Post-test repetition
  • Selection in assembly language
  • Single selection
  • Multi-way selection
  • Nesting in assembly language
  • Nesting selection or repetition
  • Nesting selection and repetition
  • Objects in assembly language
  • Properties
  • Methods
  • Data structures in assembly language
  • Arrays
  • Lists
  • Files in assembly language
  • Sequential access
  • Random access
  • Ibm tools
  • Vsam demystified
  • Db2 overview
  • Cics overview

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Introduces students to the fundamentals of computer operation and assembly language programming
Builds learners' programming capabilities from the ground up, starting with the basics of binary digital logic
Provides learners with the foundation necessary to develop assembly language solutions to problems expressed with algorithms that include high-level language concepts

Save this course

Save Assembler Language to your list so you can find it easily later:
Save

Activities

Coming soon We're preparing activities for Assembler Language. These are activities you can do either before, during, or after a course.

Career center

Learners who complete Assembler Language will develop knowledge and skills that may be useful to these careers:
Embedded Systems Engineer
Embedded Systems Engineers design and develop embedded systems, which are computer systems that are built into larger devices or products. They have a deep understanding of hardware and software, including assembly language. This course provides a solid foundation in assembly language and computer organization, enabling learners to build a strong foundation for a successful career in this field.
Computer Hardware Engineer
Computer Hardware Engineers design, develop, and test computer hardware, including processors, memory, and storage devices. Understanding assembly language is crucial in this role, as it enables engineers to interact with hardware at a low level to optimize performance and troubleshoot issues. This course provides a comprehensive understanding of the organization and operation of a computer system, including hardware components and assembly language.
Software Developer
Software Developers design, develop, and test software applications. They may specialize in a particular area, such as web development, mobile development, or enterprise software. Assembly language is used to optimize code for speed and efficiency, especially in embedded systems and operating systems. This course provides a strong foundation in assembly language, which can be highly beneficial for those seeking to enter this field.
Computer and Information Research Scientist
A Computer and Information Research Scientist conducts fundamental research on the principles, design, and applications of computer and information technology. Assembly language is key to understanding how the computer stores and manipulates data, which is critical in building and designing new technologies. This course provides a foundation in computer organization, specifically in binary digital logic, hardware components, and assembly language. Completing this course can help learners gain valuable knowledge and skills to excel in this role.
Systems Analyst
Systems Analysts analyze and design computer systems. They work with users to understand their needs and develop solutions that meet those needs. Assembly language can be useful in this role for understanding the underlying architecture of computer systems and optimizing performance. This course provides a broad overview of computer organization and assembly language, which can be beneficial for aspiring Systems Analysts.
Information Security Analyst
Information Security Analysts protect computer systems and networks from unauthorized access, use, disclosure, disruption, modification, or destruction. Assembly language is not directly related to information security, but it can provide a valuable foundation for understanding how computers work and how to protect them from threats. This course may be helpful for those interested in a career in information security who want to gain a deeper understanding of computer systems.
Data Scientist
Data Scientists use data to solve problems and make informed decisions. They work in a variety of industries, including finance, healthcare, and technology. Assembly language is not directly related to data science, but it can provide a valuable foundation for understanding how computers work and how data is stored and processed. This course may be helpful for those interested in a career in data science who want to gain a deeper understanding of computer systems.
Network Administrator
Network Administrators maintain and troubleshoot computer networks. They ensure that networks are running smoothly and securely. Assembly language is not directly related to network administration, but it can provide a valuable foundation for understanding how computers and networks work. This course may be helpful for those interested in a career in network administration who want to gain a deeper understanding of computer systems.
Database Administrator
Database Administrators maintain and troubleshoot databases. They ensure that databases are running smoothly and securely. Assembly language is not directly related to database administration, but it can provide a valuable foundation for understanding how computers and databases work. This course may be helpful for those interested in a career in database administration who want to gain a deeper understanding of computer systems.
Technical Writer
Technical Writers create documentation for computer systems, software, and other technical products. They work with engineers and other technical experts to gather information and write clear and concise documentation. Assembly language is not directly related to technical writing, but it can provide a valuable foundation for understanding how computers work. This course may be helpful for those interested in a career in technical writing who want to gain a deeper understanding of computer systems.
User Experience Designer
User Experience Designers design user interfaces for websites, mobile apps, and other digital products. They focus on creating interfaces that are easy to use and visually appealing. Assembly language is not directly related to user experience design, but it can provide a valuable foundation for understanding how computers work and how users interact with them. This course may be helpful for those interested in a career in user experience design who want to gain a deeper understanding of computer systems.
Project Manager
Project Managers plan and execute projects. They work with teams of people to achieve project goals. Assembly language is not directly related to project management, but it can provide a valuable foundation for understanding how computers work and how to manage projects effectively. This course may be helpful for those interested in a career in project management who want to gain a deeper understanding of computer systems.
Sales Engineer
Sales Engineers sell technical products and services. They work with customers to understand their needs and develop solutions that meet those needs. Assembly language is not directly related to sales engineering, but it can provide a valuable foundation for understanding how computers work. This course may be helpful for those interested in a career in sales engineering who want to gain a deeper understanding of computer systems.
Business Analyst
Business Analysts analyze business needs and develop solutions to meet those needs. They work with stakeholders to gather information and develop solutions that meet business objectives. Assembly language is not directly related to business analysis, but it can provide a valuable foundation for understanding how computers work and how to develop solutions. This course may be helpful for those interested in a career in business analysis who want to gain a deeper understanding of computer systems.
Technical Support Specialist
Technical Support Specialists provide technical support to users of computer systems and software. They help users troubleshoot problems and resolve issues. Assembly language is not directly related to technical support, but it can provide a valuable foundation for understanding how computers work. This course may be helpful for those interested in a career in technical support who want to gain a deeper understanding of computer systems.

Reading list

We've selected 14 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Assembler Language.
Provides a comprehensive overview of computer systems from a programmer's perspective. It covers topics such as computer architecture, operating systems, and programming languages.
Provides a thorough introduction to assembly language for x86 processors. It covers topics such as assembly language syntax, programming techniques, and debugging.
Save
Provides a comprehensive overview of MIPS assembly language. It covers topics such as MIPS architecture, assembly language syntax, and programming techniques.
Provides a comprehensive overview of advanced computer architecture. It covers topics such as parallel processing, cache memory, and virtual memory.
Provides a comprehensive overview of computing systems from a theoretical perspective. It covers topics such as algorithms, data structures, and computer architecture.
Provides a comprehensive overview of operating systems concepts. It covers topics such as process management, memory management, and file systems.
Provides a comprehensive overview of data structures and algorithms. It covers topics such as stacks, queues, trees, and graphs.
Provides a comprehensive overview of the C programming language. It covers topics such as data types, control flow, and functions.
Provides a comprehensive overview of the Java programming language. It covers topics such as object-oriented programming, exception handling, and multithreading.
Provides a comprehensive overview of web development with HTML, CSS, and JavaScript. It covers topics such as web design, front-end development, and back-end development.
Provides a comprehensive overview of computer programming. It covers topics such as algorithms, data structures, and programming techniques.
Provides a comprehensive overview of discrete mathematics. It covers topics such as logic, set theory, and graph theory.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Assembler Language.
Assembly Language Programming
Most relevant
How Computers Work: Demystifying Computation
Most relevant
Introduction to Microprocessors
Most relevant
Introduction to Microprocessors
Most relevant
Computer Architecture
Most relevant
Understanding Maths and Logic in Computer Science
Most relevant
Malware Analysis and Assembly Language Introduction
Malware Analysis and Introduction to Assembly Language
How Computers Work: Demystifying Computation
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser