A program to create assembly 8086 strings to print without using any printing/strings related function but only mov-xchg-int and loops

Assembly String builder tool

A program to create assembly 8086 strings to print without using any printing/strings related function but only mov-xchg-int and loops
This software is probably useless in any use case so you should ignore it as it is only a fun project for school and for making assembly project easily using only the instructions we studied yet

Sample program generated by the software that writes "Hello World!"

    mov DS:[ 0 ],0    ;EMPTY
    mov DS:[ 1 ],0    ;EMPTY     
    mov DS:[ 2 ], 11     ;NUMBER OF CHARS
    mov DS:[ 3 ],0    ;CH = 0
    mov DS:[ 4 ], 8     ;START OF CHARS
    mov DS:[ 5 ],0    ;BH = 0
    mov DS:[ 6 ],0    ;DL = 0
    mov DS:[ 7 ],0    ;DH = 0

    mov DS:[ 0 ],AX   ;SAVE AX AND EMPTY IT
    xchg DS:[ 2 ],CX  ;SAVE CX AND LOAD CHAR COUNTER
    xchg DS:[ 4 ],BX  ;SAVE AND LOAD POINTER
    xchg DS:[ 6 ],DX  ;SAVE AND LOAD CHARACTER

    mov DS:[ 8 ], 104  	 ;MOVE CHARS
    mov DS:[ 9 ], 101  	 ;MOVE CHARS
    mov DS:[ 10 ], 108  	 ;MOVE CHARS
    mov DS:[ 11 ], 108  	 ;MOVE CHARS
    mov DS:[ 12 ], 111  	 ;MOVE CHARS
    mov DS:[ 13 ], 32  	 ;MOVE CHARS
    mov DS:[ 14 ], 119  	 ;MOVE CHARS
    mov DS:[ 15 ], 111  	 ;MOVE CHARS
    mov DS:[ 16 ], 114  	 ;MOVE CHARS
    mov DS:[ 17 ], 108  	 ;MOVE CHARS
    mov DS:[ 18 ], 100  	 ;MOVE CHARS

    mov AX,0        ;EMPTY AX
    mov AH,2        ;OUTPUT MODE
loopPrint:
    mov DL,DS:[BX]  ;LOAD CURRENT CHAR IN MEMORY
    int 21h         ;PRINT
    inc BX          ;INCREMENT POINTER
    loop loopPrint

    mov AX,DS:[ 0 ]
    mov CX,DS:[ 2 ]
    mov BX,DS:[ 4 ]
    mov DX,DS:[ 6 ]
Owner
Reg
Hewwo there o/ I'm Reg and I love developing in Java, C# and C++. I attend a computer science school and I'm trying to learn as much as I can about coding :3
Reg
Similar Resources

Cpu-profiling - Basic example of CPU Profiling in Golang which shows the bottlenecks and how much time is spent per function

cpu-profiling Basic example of CPU Profiling in Golang which shows the bottlenec

Aug 2, 2022

Identify containers at runtime and observe them. No container runtime required. Read only access to the kernel.

Linux Telemetry The Double Slit Experiment Taken from an interesting physics anomaly where the behavior of a physical system mutates simply by being o

Sep 18, 2022

Grabs the IP adress, discord tokens and Windows NT Users in the machine. Only for educational purpuses!!

go-malware Grabs the IP adress, discord tokens and Windows NT Users in the machine. Only for educational purpuses!! Edit the main file and put your we

Apr 13, 2022

Simple library to handle ANSI functions and parsing of color formatting strings

Emerald A basic color library for use in my Go projects, built on top of mgutz/ansi. Package ansi is a small, fast library to create ANSI colored stri

Oct 28, 2022

Reload Go code in a running process at function/method level granularity

got reload? Function/method-level stateful hot reloading for Go! Status Very much work in progress.

Nov 9, 2022

keeper is package for Go that provides a mechanism for waiting a result of execution function until context cancel.

keeper is package for Go that provides a mechanism for waiting a result of execution function until context cancel.

Apr 18, 2022

Graceful - shutdown package when a service is turned off by software function

graceful Graceful shutdown package when a service is turned off by software func

Dec 29, 2022

Perforator is a tool for recording performance metrics over subregions of a program using the Linux "perf" interface.

Perforator Perforator is a tool for recording performance metrics over subregions of a program (e.g., functions) using the Linux "perf" interface.

Dec 15, 2022

A library for parsing ANSI encoded strings

 A library for parsing ANSI encoded strings

Go ANSI Parser converts strings with ANSI escape codes into a slice of structs that represent styled text

Sep 20, 2022
Related tags
go-to64 analyzes Golang main package to convert int/uint to int64/uint64.

go-to64 About go-to64 analyzes Golang main package to convert int/uint to int64/uint64. This is an experiment tool, so be very careful. In a 32-bit en

Oct 31, 2021
Create deep copies (clones) of your maps and slices without using reflection.

DeepCopy DeepCopy helps you create deep copies (clones) of your maps and slices. Create deep copies (clones) of your objects The package is based on t

Nov 20, 2022
Execute a binary from memory, without touching the disk. Linux only.
Execute a binary from memory, without touching the disk. Linux only.

Memit Execute a binary from memory, without touching the disk. Linux only. Available as both a Go module and a binary. Using the Go module The Command

Jan 5, 2023
A helper function to create a pointer to a new object in Go 1.18+
A helper function to create a pointer to a new object in Go 1.18+

A helper function to create a pointer to a new object in Go 1.18+

Nov 9, 2022
Hotswap provides a solution for reloading your go code without restarting your server, interrupting or blocking any ongoing procedure.
Hotswap provides a solution for reloading your go code without restarting your server, interrupting or blocking any ongoing procedure.

Hotswap provides a solution for reloading your go code without restarting your server, interrupting or blocking any ongoing procedure. Hotswap is built upon the plugin mechanism.

Jan 5, 2023
Hex dump and read values of files quickly and swiftly with Go-Hex a program designed to dump any file in a hexadecimal format

Go-Hex Hex dump and read values of files quickly and swiftly with Go-Hex a program designed to dump any file in a hexadecimal format Dump Hashes ----

Oct 10, 2021
A directory of hardware related libs, tools, and tutorials for Go

Go + hardware This repo is a directory of tools, packages and tutorials to let you introduce Go in your hardware projects. Why Go? Go can target platf

Dec 30, 2022
Print random bytes from a secure source to stdout.

Print random bytes from a secure source to stdout.

Feb 11, 2022
Scalable golang ratelimiter using the sliding window algorithm. Currently supports only Redis.
Scalable golang ratelimiter using the sliding window algorithm. Currently supports only Redis.

go-ratelimiter Scalable golang ratelimiter using the sliding window algorithm. Currently supports only Redis. Example usage client := redis.NewClient

Oct 19, 2021
A comprehensive, efficient, and reusable util function library of go.

Lancet Lancet is a comprehensive, efficient, and reusable util function library of go. Inspired by the java apache common package and lodash.js. Engli

Jan 8, 2023