This web page examines string and character instructions in assembly language. Specific examples of instructions from various processors are used to illustrate the general nature of assembly language.
free computer programming text book project
If you like the idea of this project, then please donate some money.
MVC MoVe Character; IBM 360/370; SS format; moves one to 256 characters (8 bits each) of data; main storage to main storage only; does not affect condition code
CMPC3 Compare Characters 3 Operand; DEC VAX; compares two character strings designated by a length and two source addresses, indicating if they are the same or different; sets Z flag if two strings are equal and sets registers to indicate position where the two strings differed
CMPC5 Compare Characters 5 Operand; DEC VAX; compares two character strings designated by two lengths and two source addresses, indicating if they are the same or different, virtually extending the shorter string with the designated fill character; sets Z flag if two strings are equal and sets registers to indicate position where the two strings differed
LOCC Locate Character; DEC VAX; finds the character operand in the character string designated by the source string length and address; sets Z flag if the character is in the string and sets registers to indicate position, one register havingthe integer count and another register having the memory address
MATCHC Match Characters; DEC VAX; searchs a string of specified legth and source address for a substring that matches the object string specified by the object length and object address; sets or clears Z flag (set if substring found, cleared if not)
MOVC3 Move Character 3 Operand; DEC VAX; moves the character string of the designated length from the source address to the destination address, taking into account the possibility of overlapping memory blocks
MOVC5 Move Character 5 Operand; DEC VAX; moves the character string of the designated length and source address to the destination length and address, taking into account the possibility of overlapping memory blocks, truncating if the source is larger than the destination and using the designated fill character if the destination is larger than the source
MOVTC Move Translated Characters; DEC VAX; moves the character string of the designated length and source address to the destination length and address, using the designated translation table (256 entries), taking into account the possibility of overlapping memory blocks, truncating if the source is larger than the destination and using the designated fill character if the destination is larger than the source
MOVTUC Move Translated Until Character; DEC VAX; moves the character string of the designated length and source address to the destination length and address, using the designated translation table (256 entries), stopping when encountering the designated escape character, taking into account the possibility of overlapping memory blocks, truncating if the source is larger than the destination and using the designated fill character if the destination is larger than the source
SCANC Scan Characters; DEC VAX; scans the character string designated by the length and memory address using the designated table and mask, each character being used as an index into the table, the resulting table entry bit ANDed with the mask operand until the result of the AND is non-zero or the string is exhausted, giving the integer count and the memory address of the byte producing the non-zero AND result or zero count for exhausting the string without a non-zero result
SPANC Span Characters; DEC VAX; scans the character string designated by the length and memory address using the designated table and mask, each character being used as an index into the table, the resulting table entry bit ANDed with the mask operand until the result of the AND is zero or the string is exhausted, giving the integer count and the memory address of the byte producing the zero AND result or zero count for exhausting the string without a zero result
SKPC Skip Characters; DEC VAX; compares the character operand with the string designated by the length and memory address until an inequality is located or the string is exhausted, giving the integer count and memory address of the byte producing inequality or zero count for exhausting the string without inequality
Programming example: I am making heavily documented and explained open source PHP/MySQL code for a method to play music for free almost any song, no subscription fees, no download costs, no advertisements, all completely legal. This is done by building a front-end to YouTube (which checks the copyright permissions for you).
Create your own copy from the original source code/ (presented for learning programming). Includes how to run this from your own computer if you dont have a web site.
OSdata.com is used in more than 300 colleges and universities around the world
A web site on dozens of operating systems simply cant be maintained by one person. This is a cooperative effort. If you spot an error in fact, grammar, syntax, or spelling, or a broken link, or have additional information, commentary, or constructive criticism, please e-mail Milo. If you have any extra copies of docs, manuals, or other materials that can assist in accuracy and completeness, please send them to Milo, PO Box 1361, Tustin, CA, USA, 92781.
Building a free downloadable text book on computer programming for university, college, community college, and high school classes in computer programming.
If you like the idea of this project, then please donate some money.
send donations to: Milo
PO Box 1361
Tustin, California 92781
Supporting the entire project:
If you have a business or organization that can support the entire cost of this project, please contact Pr Ntr Kmt (my church)