0% found this document useful (0 votes)
25 views

Assignment New

Research
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views

Assignment New

Research
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

NAME: AYODEJI TIMILEHIN EMMANUEL

MATRIC NUMBER: RUN/CMP/21/10848


DEPARTMENT: COMPUTER SCIENCE
COURSE CODE : CSC 301

ASSIGNMENT
1. What are low level machine language and how do they operate?
Discuss any five types.
2. Explain what high level languages are. Discuss any five types.
3. Identify the similarities and diffferences between the high and
low level languages.

1. What are low level language and how do they operate? Dicuss any
five types.

low-level machine languages are the languages that the computer


itself understands. It's the most fundamental form of
communication between a computer and its hardware. High-level
languages, like C or Java, are great for humans to write programs
in, but they need to be translated into the low-level machine
language to be understood by the computer. The translation is done
by a compiler, which converts the code into ones and zeros that
the computer can process. The resulting machine language code is
what actually runs the computer. low-level machine languages are
like a manual for the computer. They're the instructions that tell
the computer exactly what to do, bit by bit. High-level languages
are like an assistant who helps you accomplish tasks, without you
having to know all the details. Low-level machine languages allow
you to get more control over the computer, but it's more work to
write and maintain the code. High-level languages are easier to
use, but don't give you as much control.

1. Assembly Language:
Assembly language is a type of low-level programming language that
is closely related to the machine language of a computer
architecture.In other words, assembly language is like using a set
of codes to represent instructions that the computer understands.
These codes are still complex and hard to understand, but they're
easier for humans to remember than the raw machine language.In
other words, assembly language is like using a set of codes to
represent instructions that the computer understands. These codes
are still complex and hard to understand, but they're easier for
humans to remember than the raw machine language.
Assemblers are the tools responsible for translating assembly
language code into machine code. The assembler reads the assembly
code, replaces the mnemonics with their corresponding machine
code, and generates an executable file.

2. Hardware Description Languages (HDL):


HDLs are special programming languages used to describe digital
electronic circuits and systems. They allow designers to specify
the behavior and structure of hardware components. HDLs, such as
VHDL (VHSIC Hardware Description Language) and Verilog, are used
in the design and simulation of integrated circuits and
programmable logic devices. They describe the components that make
up the system, and they tell the computer how the components
should interact with each other. HDLs tell the computer how to
build the hardware, what components to use, and how they should
work together. They're a way of describing the hardware in a
language that's easier for computers to understand.

3. Microcode
Microcode is a layer of low-level instructions that sits between
machine language and the physical circuitry of a computer's CPU.
Microcode is like this translator, but for the computer's CPU.
When the CPU receives a higher-level instruction, the microcode
translates it into a series of lower-level instructions that the
CPU can understand and execute. The microcode makes it possible
for the CPU to run more complex instructions without having to
change the underlying hardware.

4. Machine Code
Machine language is the lowest level of programming language. It
consists of binary code that directly communicates with the
computer's hardware. Each instruction is represented by a specific
sequence of 0s and 1s, known as machine code.These machine code
instructions are the foundation of every computer program, from
the operating system to the apps you use every day. Without this
code, computers would be useless.Machine code is often generated
by higher-level programming languages or compilers. Programmers
rarely write machine code directly, as it is complex and error-
prone.

5. Binary-coded Decimal (BCD)


BCD is a low-level language used for representing decimal numbers
in binary form. It uses four bits to represent each decimal digit,
allowing for direct manipulation and arithmetic operations on
decimal values.It consists of sequences of 0s and 1s, with each
pattern representing a specific operation or data. Computers
directly fetch and execute binary code instructions from memory.
The CPU interprets the binary code by decoding the patterns and
executing the corresponding operations. The control unit
coordinates the flow of data and controls the timing of operations
based on the binary instructions.
While programmers rarely write directly in binary code due to its
complexity, understanding how instructions are represented in
binary is essential for system-level programming and debugging.

2. Explain what high level languages are. Discuss any five types.
High-level languages are a broad category of programming languages
that are designed to be readable and understandable by humans.
They are not meant to be executed directly by a computer, but
rather are translated into a lower-level language (like machine
code or assembly language) that the computer can understand. This
makes high-level languages more user-friendly.High-level languages
are designed to be more readable, writable, and maintainable,
making them accessible to a broader range of programmers.
Here are 5 types of high leel language

1 java script
JavaScript is a programming language that makes web pages
interactive and dynamic. It allows developers to create rich user
experiences, like dragging and dropping elements on a page,
animating elements, and tracking user interactions. It can also
communicate with web servers, so it's not just limited to the
client-side. JavaScript is lightweight, which means it doesn't
take up a lot of memory or processing power.avaScript is essential
for front-end web development, allowing developers to manipulate
Document Object Model (DOM) elements, handle user interactions,
and communicate with servers asynchronously. Its popularity has
grown with the rise of web frameworks like React, Angular, and
Vue.js.

2. Java - A popular object-oriented language used for developing


web applications, mobile apps, and more. It's known for its
portability, as it can run on any platform that has a Java Virtual
Machine (JVM).Java's strong emphasis on portability, security, and
performance makes it a popular choice for building enterprise-
level applications, mobile apps (Android), and web-based
systems.Java's object-oriented nature encourages modular and
scalable software design, promoting code reuse and
maintainability. Additionally, Java's extensive standard library
and community support contribute to its robust ecosystem.

3. Python - A high-level language that's easy to learn and use.


It's popular for scientific computing, machine learning,
artificial intelligence, and more. It's also known for its
readability, as the code is often very similar to natural
language.It uses a clean and concise syntax, making it suitable
for a wide range of applications, from web development to
scientific computing. Python's extensive standard library and
community support contribute to its popularity among beginners and
experienced developers alike.
With features like dynamic typing and automatic memory management,
Python enables rapid development and encourages a clean coding
style

4 PHP is a programming language that makes web pages dynamic. It


allows developers to create content that changes based on user
input or other factors, like time or location.This allows
developers to create complex and dynamic web applications that can
retrieve and update information from databases, generate dynamic
content, and more. Because it's a server-side language, it can run
on any platform, including Windows, Linux, and macOS. It's also
open-source, which means it's free to use and develop. This has
made it popular for web development, especially for
CMSes like WordPress.
5. Ruby
Ruby is a dynamic, object-oriented programming language that
prioritizes simplicity and developer happiness. It is often
associated with the Ruby on Rails web framework, known for its
convention-over-configuration approach and rapid development
capabilities. Ruby's expressive syntax and focus on readability
make it a language of choice for web development, automation, and
scripting.

3. Identify the similarities and diffferences between the high and


low level languages.

Similarities:
1. Both are used to communicate with computers and instruct them
to perform tasks.
2. Both are sets of rules and syntax that the computer can
understand.
3. Both require some level of understanding of programming
concepts.
4. The main similarity is that both types of languages allow
developers to create programs that are executed by a computer.

Differences:
1 Abstraction: High-level languages use a higher level of
abstraction, meaning they are closer to human language and further
away from the machine's language. This makes them easier to
understand and learn, but also less efficient. Low-level languages
use a lower level of abstraction, meaning they are closer to the
machine's language. This makes them more efficient, but also more
difficult to understand and learn.

2. Human-friendliness: High-level languages are designed to be


more human-friendly, with keywords, syntax, and structures that
are closer to natural language. Low-level languages are designed
to be more machine-friendly, with instructions and opcodes that
are closer to the machine's binary code.

3. Machine-friendliness: The opposite of human-friendliness. High-


level languages require a compiler or interpreter to translate
them into machine code that the computer can understand. Low-level
languages do not require any translation and can be directly
executed by the computer.

4. Portability: High-level languages are more portable, meaning


they can be run on different types of computers with minimal
changes. This is because they are not tied to the specific
hardware of any particular machine. Low-level languages are less
portable, meaning they may need to be rewritten or modified to run
on different types of computers.
5. Development speed: High-level languages allow for faster
development because they are more concise and easier to read. Low-
level languages require more code to be written and can be more
time-consuming to debug.

6. Memory usage: High-level languages generally use more memory


than low-level languages because they require additional overhead
for the compiler or interpreter and for managing data structures.
Low-level languages have less overhead and can be more memory-
efficient.

You might also like