User Tools

Site Tools


This is an old revision of the document!

A PCRE internal error occured. This might be caused by a faulty plugin

=====Converting a number to a string===== //by Richard Russell, January 2015//\\ \\ You may wish to convert a number to a string in assembly language (equivalent to the STR$ function in BASIC). This can easily be done by calling an internal routine within the interpreter. Here is how to do it (requires //BBC BASIC for Windows// version 6):\\ ; eax = print format control (equivalent to @%) ; bx|ecx|edx = number to print (80-bit variant) ; edi = address of destination buffer push eax mov ebp,esp call @fn%(12) pop eax mov byte [edx+ecx],0 On completion a NUL-terminated string is stored in the supplied buffer.\\ \\ To illustrate the use of this code here is a complete program which prints the value of PI using assembly language:\\ DIM Buffer% 255, P% 100, L% -1 [OPT 10 .ppi mov eax,&1414 ; G20 format mov bx,&4000 ; Value of PI ... mov ecx,&C90FDAA2 ; .. as an ... mov edx,&2168C235 ; .. 80-bit float mov edi,Buffer% ; Destination buffer push eax mov ebp,esp call @fn%(12) pop eax mov byte [edx+ecx],0 mov esi,Buffer% .vout lodsb call "oswrch" or al,al jnz vout ret ] CALL ppi PRINT

This website uses cookies for visitor traffic analysis. By using the website, you agree with storing the cookies on your computer.More information
converting_20a_20number_20to_20a_20string.1522502351.txt.gz · Last modified: 2018/03/31 14:19 by