For faster navigation, this Iframe is preloading the Wikiwand page for Repeat instruction.

Repeat instruction

In computer instruction set architectures (ISA), a repeat instruction is a machine language instruction which repeatedly executes another instruction a fixed number of times, or until some condition is met.

Since it is an instruction that operates on other instructions like the execute instruction, it has been classified as a meta-instruction.[1]

Computer models

[edit]

The Univac 1103 (1953) includes a repeat instruction (op code mnemonic: RPjnw) which executes the following instruction a fixed number of times, possibly incrementing one or both of the address fields of that instruction.[2] This compensates for the architecture's lack of index registers.[3]

The GE-600/Honeywell 6000 series (1964) supports a single-instruction repeat (RPT), a double-instruction repeat (RPTD), and a linked-list repeat (RPL).[4][5]

The x86 ISA, starting with the 8086, includes a series of special-purpose repeat instructions (REP(∅/E/Z/NE/NZ)) which are called "repeat string operation prefixes" and may only be applied to a small number of string instructions (INS, OUTS, MOVS, LODS, STOS, CMPS, SCAS). These instructions repeat an operation and decrement a counter until it is zero, or may also stop when a certain condition is met.[6]

The Texas Instruments TMS320 digital signal processor (1983) includes an instruction for repeating a single-cycle instruction or two single-cycle instruction in parallel (RPT) and an instruction for repeating a block of instructions (RPTC). These use special block-repeat counter registers (BRC0, BRC1).[7]

Semantics

[edit]

The instruction or instruction pair to be executed follows the repeat instruction. Fields in the instruction determine the loop termination condition.[5] In the case of the TMS320, a block of up to 64Kbytes can be repeated.[7]

Notes

[edit]
  1. ^ Rossman, George E. (December 1975). "A Course of Study in Computer Hardware Architecture". IEEE Computer. 8 (12): 44–63. doi:10.1109/C-M.1975.218835. S2CID 977792., p. 50
  2. ^ Reference Manual: Univac Scientific 1103A Computer (PDF). Remington Rand Univac. 1956. p. 30.
  3. ^ Conrad Weisert, "Simulating an Obsolete Computer in 1960", Part 1: The main processor [1]
  4. ^ GE-635 System Manual (PDF). General Electric Computer Department. July 1964. p. A-6.
  5. ^ a b GE-625/635 Programming Reference Manual (PDF). General Electric Information Systems. July 1964.
  6. ^ Intel Corporation, "Instruction Set Reference", Intel 64 and IA-32 Architectures Software Developer's Manual, Order Number 253667-060US, September 2016, 2B:4-550 full text
  7. ^ a b Kuo, Sen-Maw (2003). Real-time Digital Signal Processing: Implementations, Applications, and Experiments with the TMS320C55X. 清华大学出版社有限公司. pp. 67–68. ISBN 978-7-302-07700-8.
{{bottomLinkPreText}} {{bottomLinkText}}
Repeat instruction
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 ๐ŸŽ‰! the new version arrives on September 1st! Don't want to wait?