(NO oPeration) See no-op.
Download Computer Desktop Encyclopedia to your iPhone/iTouch
| 5min Related Video: NOP |
| Wikipedia: NOP |
In computer science NOP or NOOP (short for No OPeration or No Operation Performed) is an assembly language instruction, sequence of programming language statements, or computer protocol command that effectively does nothing at all.
Contents |
Some computer instruction sets include an instruction whose explicit purpose is not to change the state of any of the programmer accessible registers, status flags or memory, and which may require a specific number of clock cycles to execute. In other instruction sets, a NOP has to be simulated by executing an instruction having operands that cause the same effect (e.g., on the SPARC processor the instruction sethi 0, %g0 is the recommended solution).
A NOP is most commonly used for timing purposes, to force memory alignment, to prevent hazards, to occupy a branch delay slot, or as a place-holder to be replaced by active instructions later on in program development (or to replace removed instructions when refactoring would be problematic or time-consuming). In some cases, a NOP can have minor side effects; for example, on the Motorola 68000 series of processors, the NOP opcode will cause a synchronization of the pipeline.[1]
Here are the characteristics of the NOP instruction for some CPU architectures:
| CPU architecture | Mnemonic | Bytes | Opcode |
|---|---|---|---|
| Intel x86 CPU family | NOP |
1; 1–9 for i686 | 0x90; 0x0f 0x1f [2] |
| Intel 8051 / MCS-51 family | NOP |
1 | 0x00 |
| MIPS | NOP |
4 | 0x00000000 |
| PowerPC | NOP |
4 | 0x60000000 (extended opcode for ori r0,r0,0) |
NOP (or NOOP) is sometimes used as a description for the action performed by a function or a sequence of programming language statements if the function or code has no effect (it might also be called redundant code). A common compiler optimization is the detection and removal of this kind of code.
The following is an example of a single C statement that behaves like a NOP (the issue is whether the statement affects program output, not whether or not a compiler generates any code for this statement):
i+1;
(This statement performs an addition and discards the result.)
The simplest possible statement in C that behaves like a NOP is the so called null statement; which is just a semi-colon in a context requiring a statement. (A compiler is not required to generate a NOP instruction in this case; typically no instructions whatsoever would be generated.)
;
The null statement is useless by itself, but can have a syntactic use in a wider context, e.g., within the context of a loop:
while (ReadChar() != '\n')
;
The above code continues calling the function ReadChar until it returns a \n (newline) character.
The Python programming language has a pass statement which has no effect when executed and thus serves as a NOP. It is primarily used to ensure correct syntax due to Python's indentation-sensitive syntax.
Many computer protocols, such as telnet, include a NOP command that a client can issue to request a response from the server without requesting any other actions. Such a command can be used to ensure the connection is still alive or that the server is responsive. A NOOP command is part of the following protocols (this is a partial list):
Note that unlike the other protocols listed, the IMAP4 NOP command has a specific purpose which is to allow the client to request that the server send unsolicited information reflecting the actions of other clients.
While most telnet or FTP servers respond to a NOOP command with "OK" or "+OK", some programmers have added quirky responses to the client. For example, the ftpd daemon of MINIX responds to NOOP with a message[3]:
200 NOOP to you too!
NOPs are often involved when cracking software that checks for serial numbers, specific hardware or software requirements, presence or absence of hardware dongles, etc. This is accomplished by altering functions and subroutines to by-pass security checks and instead simply return the expected value being checked for. Since most of the instructions in the security check routine will be unused, these would be replaced with NOPs.
This entry is from Wikipedia, the leading user-contributed encyclopedia. It may not have been reviewed by professional editors (see full disclaimer)
| no-op (computer jargon) | |
| Donald McCaig (literature) | |
| National Salvation Party |
| Given the fomula M equals NOP what is the formla for P? | |
| Which of the following is the measure of nop it's x-y xy or x y? | |
| How can you prepare for lums nop? |
Copyrights:
![]() | Computer Desktop Encyclopedia. THIS COPYRIGHTED DEFINITION IS FOR PERSONAL USE ONLY. All other reproduction is strictly prohibited without permission from the publisher. © 1981-2009 Computer Language Company Inc. All rights reserved. Read more | |
![]() | Wikipedia. This article is licensed under the Creative Commons Attribution/Share-Alike License. It uses material from the Wikipedia article "NOP". Read more |
Mentioned in