Skip to content

MdSyfulIslam/Bank-Management-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

7 Commits
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿฆ Bank Management System (Assembly Language - 8086)

A simulation of core banking operations (like account creation, deposit, withdrawal, and display) developed using Assembly Language on the Emu8086 Emulator. This project was developed as part of the Microprocessors & Microcontrollers Lab(CSE 304) course at Green University of Bangladesh.


๐Ÿ“‹ Table of Contents


๐Ÿ” Project Overview

This Bank Management System is built entirely in 8086 Assembly Language and executed on the Emu8086 emulator. It mimics the basic workflow of banking systems by allowing users to:

  • Create new accounts
  • View account details
  • Deposit or withdraw money
  • Validate balance before withdrawals

The project serves as a practical learning exercise for mastering low-level programming and memory handling.


๐ŸŽฏ Features

  • โœ… Create new accounts
  • โœ… Store and retrieve account details
  • โœ… Deposit money to existing accounts
  • โœ… Withdraw money with balance validation
  • โœ… Navigate through a menu-driven interface
  • โš™๏ธ Efficient memory management under Emu8086 constraints
  • โ›“ Built with low-level BIOS interrupts (INT 21h)

โš™๏ธ Tools & Technologies

  • Language: 8086 Assembly (x86 architecture)
  • Emulator: Emu8086
  • Interrupts: INT 21h for Input/Output handling
  • Platform: Windows OS with Emu8086 installed

๐Ÿง  Key Procedures

Each major function of the system is implemented through well-defined assembly procedures:

Functionality Description
Main Procedure Handles menu navigation
Create Account Captures and stores user account information
Show Account Displays all saved account details
Deposit Money Adds entered amount to a userโ€™s account balance
Withdraw Money Subtracts amount with sufficient balance check

๐Ÿ“Š Performance & Testing

The project was thoroughly tested on Emu8086, validating the following actions:

  • โœ” Account creation: Captures and confirms user entry
  • โœ” Deposit: Adds amount successfully and updates balance
  • โœ” Withdrawal: Checks balance before processing; shows error if insufficient

Average response time: Instantaneous, suitable for learning/demo purposes.
Memory Usage: Optimized for emulator constraints (~64KB environment)


๐Ÿงช Limitations

  • โŒ No persistent storage (data lost on program exit)
  • โŒ Single-user, single-session use only
  • โŒ No graphical interface (text-based only)
  • โŒ No error handling for invalid inputs
  • โŒ Not scalable for real-world banking

๐Ÿ“ˆ Future Improvements

  • ๐Ÿ’พ Add file handling or disk writing for data persistence
  • ๐Ÿ” Integrate PIN protection or password verification
  • ๐Ÿงฎ Add advanced banking operations like interest or loan calculations
  • ๐Ÿ’ป Build a GUI wrapper or migrate to a high-level language (C/Java)
  • ๐Ÿ‘ฅ Enable multi-user support with user authentication

๐Ÿ‘จโ€๐Ÿ’ป Author

Md Syful Islam
๐ŸŽ“ B.Sc. in CSE (Day), Green University of Bangladesh
๐Ÿง‘โ€๐Ÿซ Course: Microprocessors & Microcontrollers Lab (CSE 304)
๐Ÿ‘จโ€๐Ÿซ Instructor: Mr. Md Nazmus Shakib
๐Ÿ“š Section: 222 D6
๐Ÿ“… Submitted on: 13 December 2024


๐Ÿ“Ž References

  1. Cool Assembly Projects โ€“ Quora
  2. Procedure and Macro in Assembly
  3. EMU8086 User Guide PDF
  4. Command Line in Emu8086 โ€“ StackOverflow

About

Bank Management System Project on Microprocessors and Microcontrollers in Assembly

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published