Software-based Telegraph Simulation Implemented in C
Expertise: Algorithm and Data Structure
Outcome: Software (runs under Windows and UNIX), Implementation Report
Software-based Telegraph Simulation using Binary-Search-Tree for Morse Encoding-Decoding Scheme and Priority Queue for Message Transmission in C.
Bagus Hanindhito1, Adityo Prabowo2, Ariana Tulus Purnomo3, Ramadhani Ulfita Izantari Nampira4, Siti Marfuah Nasution5
Department of Electrical Engineering, School of Electrical Engineering and Informatics
Institut Teknologi Bandung, Indonesia
Email : email@example.com, firstname.lastname@example.org, email@example.com, firstname.lastname@example.org, email@example.com
Abstract—Telegraph is a device for sending and receiving message in a long distance communication. Electrical telegraph had been widely used since its development in 1837. One of the message encoding-decoding system that had been used was Morse scheme, developed in U.S. by Samuel Morse. Morse scheme uses dot and dash symbols to represent alphabets and numbers.
In this project, a software-based simulation for commercial electronic telegraph is built using C language and is compiled using GCC for both Windows and UNIX platform. The software consists of three sub-program: sender, transmission, and receiver. The encoding and decoding scheme is based on Morse Code whose encoder and decoder will be implemented using binary search tree for faster performance.
The sender sub-program will handle the message that will be sent. It allows users to write their message, specify the recipient of the messages, and specify the priority of the messages. The sender sub-program will further convert the message into encoder-readable message by stripping-out all of the punctuations and replace them by words in dictionary and compress the message by shorten the word without changing their meaning. Lastly, it will calculate the cost that must be paid by sender based on the length of the message and the priority of the message.
Meanwhile, the transmission sub-program will handle message transmission from the sender to the receiver. It has message-queuing with four level of message priority. The queuing system is designed in such way that each level of priority is given time slot with different period for transmission thus the lowest priority message will still be delivered eventhough there are a lot of higher priority messages. Moreover, it will also preserve the contents of the message even after morse encoder takes over. The morse encoder will use binary search tree to encode the message faster. Then, the encoded message is sent to the receiver.
Lastly, the receiver sub-program will handle incoming message. It will also leverage the binary search tree to decode the message, converting them into human-readable text. The users can read the message intended for them by asking the operator to display the message based on sender name and recipient name.
Index Terms— Morse Code, receiver sub-program, sender sub-program, software-based simulation, telegraph, transmission sub-program
Final Implementation of Telegraph Simulation using C running on Windows terminal as its interface.
High Level Dataflow Diagram showing three sub-programs and their chosen data structures to handle each functionalities.