/* * Copyright (c) 2001 Stephen Williams (steve@icarus.com) * * $Id: opcodes.txt,v 1.24 2001/06/23 18:26:26 steve Exp $ */ EXECUTABLE INSTRUCTION OPCODES Instruction opcodes all start with a % character and have 0 or more operands. In no case are there more then 3 operands. This chapter describes the specific behavior of each opcode, in hopefully enough detail that its complete effect can be predicted. General principles of Arithmetic: The binary arithmetic instruction in general take three parameters, the left operand, the right operand, and the base. The left operand is replaced with the result, which is the same width as the left and right operands. * %add , , This instruction adds the right vector into the left vector, the vectors having the width . If any of the bits of either vector are x or z, the result is x. Otherwise, the result is the arithmetic sum. See also the %sub instruction. * %and , , Perform the bitwise AND of the two vectors, and store the result in the left vector. Each bit is calculated independent of other bits. AND means the following: 0 and ? --> 0 ? and 0 --> 0 1 and 1 --> 1 otherwise x * %assign , , This does a non-blocking assignment to a variable. The