| Home CBM ASCII-X BASIC Disk Commands Enter RUN mode Program Format Secret Variables Variable Format Expressions Keywords (divide) (equal) (less) (minus) (more) (multiply) (plus) (power) Abs And Append Asc Atn Auto Backup Bank Begin Bend Bload Boot Box Bsave Bump Catalog Char Chr Circle Close Clr Cmd Collect Collision Color Concat Cont Copy Cos Data Dclear Dclose Dec Def Delete Dim Directory Dispose Dload Do Dopen Draw Ds Ds string Dsave Dverify El Else End Envelope Er Err Exit Exp Fast Fetch Filter Fn For Fre Get Get num Getkey Go Gosub Goto Graphic Gshape Header Help Hex If Input Input num Instr Int Joy Key Left Len Let List Load Locate Log Loop Mid Monitor Movspr New Next Not Off On Open Or Paint Peek Pen Pi Play Pointer Poke Pos Pot Print num Pudef Quit Rclr Rdot Read Record Rem Rename Renumber Restore Resume Return Rgr Right Rlum Rnd Rreg Rspcolor Rsppos Rsprite Run Rwindow Save Scale Scnclr Scratch Sgn Sin Sleep Slow Sound Spc Sprcolor Sprdef Sprite Sprsav Sqr Sshape St Stash Step Stop Str Swap Sys Tab Tan Tempo Then Ti Ti string To Trap Troff Tron Until Using Usr Val Verify Vol Wait While Width Window Xor Syntax Tokens C128 D64plus Disk Escape Codes Hardware PCxface PETSCII Pet2asc Futurama IBM PC-AT Contact Games Glossary Hall of fame Hall of shame Miscellaneous Privacy policy Programming Twisty puzzles |
ASC ( string )
Return the numerical code for a text character.
The ASC function simply returns the code for the first character in the string. In BASIC 2.x and earlier, using an empty string generates an ILLEGAL QUANTITY ERROR. In later versions, an empty string will return the value zero. This is important because BASIC will assign an empty-length string to a variable when using GET or GET# and the device returns a zero code. For some devices this means no data available (which might be considered an error), but for binary data transfers, a zero code is quite normal and is definately not an error. Examples show how to over-come this problem in old BASIC versions. (The way I see it, it is not this function that needed to be fixed, but the GET/GET#.) For a list of codes for the uppercase/graphics character set, see the ASCII-X page. For a list of codes for the lowercase/uppercase character set, see the PETSCII page. Actually the computer doesn't care which character set is used; but to the human viewing the characters, it can make a huge difference! Also note those tables have some duplicates; for those characters, the ones marked "Primary" are used to determine the returned code. The ASC function is especially usefull for working with codes that do not correspond to a printable character (a control code). This allows you to test for RETURN or DELETE for example. For normal characters, you could simply use a standard comparison: IF A$="Y" THEN... You will get TYPE MISMATCH ERROR with a numeric expression or variable supplied as a "string". Examples (uppercase/graphics character set):
Examples (lowercase/uppercase character set):
Examples with empty string (older BASIC versions):
© H2Obsession, 2014 |