Coding Intro 😎
👇 I have to describe you what is Programming and what is Coding.
" As a student I'm really enjoying with coding. For me coding is not just a subject or a class assignment. Coding is a magical process of convert our creative ideas into functional programs. Outside of class ,I work on personal projects to practice and develop my skills."
Coding
- Intricate process of crafting instructions, articulated through a programming language to direct a computer in performing specific tasks.
Programming
- Precise art of crafting executable brilliance, a symphony of logic and creativity converging in the elegant dance of code.
Languages😃
- Various types of programming language nowadays we can see. But in the process programming languages translate to binary codes that computer can understand.
Low Level Languages
- This type of languages closer to machine code and hardware. They provide little to no abstraction from the hardware architecture of a computer.
Examples :- Machine Language
Assembly Language
- Programs written in low languages are typically more hardware specific and require a deep understanding of the computer architecture.
- So I want to tell you about my experience with Assembly Language. In this language use mnemonic codes. Mnemonic codes are symbolic representation of the operation codes(opcodes) of machine instructions. Mnemonic codes make it easier for programmers to write and understand assembly language instructions.
1. Data Movement:
MOV
: Move data between locations.XCHG
: Exchange the contents of two registers.LEA
: Load effective address.
2. Arithmetic and Logic:
ADD
: Add two operands.SUB
: Subtract second operand from the first.INC
: Increment operand.DEC
: Decrement operand.MUL
: Multiply unsigned.IMUL
: Multiply signed.DIV
: Divide unsigned.IDIV
: Divide signed.AND
,OR
,XOR
: Bitwise logical operations.NOT
: Bitwise NOT.
3. Comparison and Conditional Jumps:
CMP
: Compare two operands.TEST
: Logical AND and update flags.- Conditional Jump mnemonics like
JE
(Jump if Equal),JG
(Jump if Greater), etc.
4. Control Flow:
JMP
: Unconditional jump.CALL
: Call a procedure or subroutine.RET
: Return from a subroutine.INT
: Software interrupt.5. Stack Operations:
PUSH
: Push data onto the stack.POP
: Pop data from the stack.
6. String Operations:
MOVS
: Move string data from source to destination.LODS
: Load string data into a register.STOS
: Store string data from a register.
7. Bit Manipulation:
BSWAP
: Byte swap.BSR
,BSF
: Bit scan reverse and forward.RCL
,RCR
,ROL
,ROR
: Rotate and shift operations.
8. Floating-Point Operations:
FADD
,FSUB
,FMUL
,FDIV
: Floating-point arithmetic.FCOM
,FUCOM
: Floating-point comparisons.
9. SIMD (Single Instruction, Multiple Data):
MMX
andSSE
instructions for multimedia processing.
10. System Control:
HLT
: Halt the processor.NOP
: No operation.- Before you begin to code with assembly language, you should know these mnemonics codes. At least you should have an understand about these.
High Level Language
- This type of languages are more user friendly. Programs written by high level languages generally more portable and easier to maintain.
Examples :- Python , Java , C# , C++ , JavaScript , PHP , Swift
Actually I am working and still studying with most of this languages.
Translators
We can divide in to two types.
Compiler - Translates the entire source code into machine code in a single pass
- Compiled programs generally have faster execution times because translation is done beforehand.
- Interpreted programs may have a slight performance overhead as they are translated during runtime.
Let's see about high level level programming languages and uses,
Python:
- Uses
- Web development (Django, Flask)
- Data science and machine learning (NumPy, Pandas, TensorFlow)
- Automation and scripting
- Backend development (using frameworks like Django or Flask)
- Artificial Intelligence (AI)
JavaScript:
- Uses
- Frontend web development (React, Angular, Vue)
- Backend development (Node.js)
- Cross-platform mobile app development (React Native)
- Browser automation (using tools like Puppeteer)
Java:
- Uses
- Enterprise-level application development
- Android app development
- Web development (Spring, Java Server Faces)
- Big data processing (Apache Hadoop)
C#:
- Uses
- Windows application development (using .NET)
- Game development (using Unity)
- Web development (ASP.NET)
- Cross-platform app development (using Xamarin)
C++:
- Uses
- System/software development
- Game development (using Unreal Engine)
- Embedded systems programming
- Performance-critical applications
Ruby:
- Uses
- Web development (Ruby on Rails)
- Scripting and automation
- Rapid prototyping
- DevOps (using tools like Chef or Puppet)
Swift:
- Uses
- iOS app development
- macOS app development
- Watch OS app development
- Server-side development (using frameworks like Vapor)
PHP:
- Uses
- Server-side web development
- Building dynamic websites and applications
- Content Management Systems (CMS) like WordPress
"High-level programming languages form the backbone of modern software development, offering a balance between abstraction and control. As we navigate this ever-evolving landscape, understanding the strengths and applications of high-level languages empowers developers to make informed choices and build innovative solutions."
Comments
Post a Comment