HOME

TheInfoList



OR:

Turbo Assembler (TASM) is an assembler for software development published by
Borland Borland Software Corporation was a computing technology company founded in 1983 by Niels Jensen, Ole Henriksen, Mogens Glad, and Philippe Kahn. Its main business was developing and selling software development and software deployment products. B ...
in 1989. It runs on and produces code for 16- or 32-bit
x86 x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel, based on the 8086 microprocessor and its 8-bit-external-bus variant, the 8088. Th ...
MS-DOS MS-DOS ( ; acronym for Microsoft Disk Operating System, also known as Microsoft DOS) is an operating system for x86-based personal computers mostly developed by Microsoft. Collectively, MS-DOS, its rebranding as IBM PC DOS, and a few op ...
and compatibles for
Microsoft Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
. It can be used with Borland's other language products:
Turbo Pascal Turbo Pascal is a software development system that includes a compiler and an integrated development environment (IDE) for the programming language Pascal (programming language), Pascal running on the operating systems CP/M, CP/M-86, and MS-DOS. ...
,
Turbo Basic PowerBASIC, formerly Turbo Basic, is the brand of several commercial compilers by PowerBASIC Inc. that compile a dialect of the BASIC programming language. There are both MS-DOS and Microsoft Windows, Windows versions, and two kinds of the latte ...
,
Turbo C Turbo C is a discontinued integrated development environment (IDE) and compiler for the C programming language from Borland. First introduced in 1987, it was noted for its integrated development environment, small size, fast compile speed, com ...
, and Turbo C++. The Turbo Assembler package is bundled with Turbo
Linker Linker or linkers may refer to: Computing * Linker (computing), a computer program that takes one or more object files generated by a compiler or generated by an assembler and links them with libraries, generating an executable program or shar ...
and is interoperable with
Turbo Debugger Turbo Debugger (TD) is a machine-level debugger for DOS executables, intended mainly for debugging Borland Turbo Pascal, and later Turbo C programs, sold by Borland. It is a full-screen debugger displaying both Turbo Pascal or Turbo C source and ...
. Borland advertised Turbo Assembler as being 2-3 times faster than its primary competitor, Microsoft Macro Assembler (MASM). TASM can assemble source in a MASM-compatible mode or an ''ideal mode'' with a few enhancements.
Object-oriented programming Object-oriented programming (OOP) is a programming paradigm based on the concept of '' objects''. Objects can contain data (called fields, attributes or properties) and have actions they can perform (called procedures or methods and impl ...
was added in version 3. The last version of Turbo Assembler is 5.4, with files dated 1996 and patches up to 2010; it is still included with
Delphi Delphi (; ), in legend previously called Pytho (Πυθώ), was an ancient sacred precinct and the seat of Pythia, the major oracle who was consulted about important decisions throughout the ancient Classical antiquity, classical world. The A ...
and
C++Builder C++Builder is a rapid application development (RAD) environment for developing software in the C++ programming language. Originally developed by Borland, it is owned by Embarcadero Technologies, a subsidiary of Idera. C++Builder can compile ...
. TASM itself is a 16-bit program. It will run on 16- and 32-bit versions of Windows, and produce code for the same versions, but it does not generate 64-bit x86 code. Turbo Assembler 5.0 (at least) also contains a 32-bit PE version of tasm called TASM32.EXE.


Example

A Turbo Assembler program that prints 'Merry Christmas!': .model small .stack 100h .data msg db "Merry christmas!",'$' .code main proc mov ax, SEG msg mov ds, ax mov dx, offset msg mov ah, 9 int 21h mov ax, 4c00h int 21h main endp end main


Reception

In a review of three assemblers, Michael Blaszczak of ''
BYTE The byte is a unit of digital information that most commonly consists of eight bits. Historically, the byte was the number of bits used to encode a single character of text in a computer and for this reason it is the smallest addressable un ...
'' in February 1989 found that Turbo Assembler was slower than SLR OPTASM but faster than and very compatible with MASM. He liked the tutorial on assembly programming and "excellent" sample code, but criticized the paucity of reference documentation. Noting that it was the only assembler that "cleanly assembled everything I fed to it", Blaszczak concluded that TASM was his favorite as it was "the best of both worlds: MASM compatibility without MASM's glitches", especially for those new to assembly.


See also

*
Comparison of assemblers This is an incomplete comparison of Assembler (computing), assemblers. Some assemblers are components of a compiler system for a high-level programming language and may have limited or no usable functionality outside of the compiler system. Some a ...
* A86 - contemporary of Turbo Assembler * MASM - contemporary of Turbo Assembler *
FASM FASM (''flat assembler'') is an assembler for x86 processors. It supports Intel-style assembly language on the IA-32 and x86-64 computer architectures. It claims high speed, size optimizations, operating system (OS) portability, and macro abi ...
- More recent x86 assembler


References

;Notes *Swan, Tom (1989). ''Mastering Turbo Assembler.'' Carmel, Indiana: Howard W. Sams & Company, Hayden Books division of Macmillan Computer Publishing. . 2nd Edition, 1995 .


External links


Mastering Turbo Assembler: Programming with Objects

GUI Turbo Assembler (TASM) : A 64bit MuItilingual IDE for Assembly Language with TASM & TLINK
by Lakhya Jyoti Nath {{X86 assembly topics 1989 software Borland software Assemblers DOS software Programming tools for Windows