Contents.Rules The universe of the Game of Life is an infinite, two-dimensional grid of square cells, each of which is in one of two possible states, alive or dead, (or populated and unpopulated, respectively). Every cell interacts with its eight, which are the cells that are horizontally, vertically, or diagonally adjacent. At each step in time, the following transitions occur:.
The Game of Life, also known simply as Life, is a cellular automaton devised by the British mathematician John Horton Conway in 1970. The game is a zero-player game, meaning that its evolution is determined by its initial state, requiring no further input.One interacts with the Game of Life by creating an initial configuration and observing how it evolves, or, for advanced players,. Due to architectural constraints in MIPS you may need to also instruct the assembler to align the reserved memory (.align 2) before your array label if you want to access on a word-by-word basis (in your particular example you would not need it, it should be already aligned).
Any live cell with fewer than two live neighbours dies, as if by underpopulation. Any live cell with two or three live neighbours lives on to the next generation. Any live cell with more than three live neighbours dies, as if by overpopulation. Any dead cell with exactly three live neighbours becomes a live cell, as if by reproduction.The initial pattern constitutes the seed of the system. The first generation is created by applying the above rules simultaneously to every cell in the seed; births and deaths occur simultaneously, and the discrete moment at which this happens is sometimes called a tick. Each generation is a of the preceding one.
The rules continue to be applied repeatedly to create further generations.Origins In late 1940, defined life as a creation (as a being or organism) which can reproduce itself and simulate a. Von Neumann was thinking about an engineering solution which would use electromagnetic components floating randomly in liquid or gas. This turned out not to be realistic with the technology available at the time. Invented, which were intended to simulate von Neumann's theoretical electromagnetic constructions.
Ulam discussed using computers to simulate his cellular automata in a two-dimensional lattice in several papers. In parallel, Von Neumann attempted to construct Ulam's cellular automaton. Although successful, he was busy with other projects and left some details unfinished. His construction was complicated because it tried to simulate his own engineering design. Over time, simpler life constructions were provided by other researchers, and published in papers and books. Motivated by questions in mathematical logic and in part by work on simulation games by Ulam, among others, began doing experiments in 1968 with a variety of different 2D cellular automaton rules.
Initial goal was to define an interesting and unpredictable cell automaton. Thus, he wanted some configurations to last for a long time before dying, other configurations to go on forever without allowing cycles, etc. It was a significant challenge and an open problem for years before experts on cell automatons managed to prove that, indeed, Conway's Game of Life admitted of a configuration which was alive in the sense of satisfying Von Neumann's two general requirements.
While the definitions before Conway's Life were proof-oriented, Conway's construction aimed at simplicity without a priori providing proof the automaton was alive.Conway chose his rules carefully, after considerable experimentation, to meet these criteria:. There should be no explosive growth.
There should exist small initial patterns with chaotic, unpredictable outcomes. There should be potential for.
The rules should be as simple as possible, whilst adhering to the above constraints.The game made its first public appearance in the October 1970 issue of, in 's ' column. Theoretically, Conway's Life has the power of a: anything that can be computed can be computed within Life. Gardner wrote, 'Because of Life's analogies with the rise, fall and alterations of a society of living organisms, it belongs to a growing class of what are called 'simulation games' (games that resemble real life processes).' Since its publication, Conway's Game of Life has attracted much interest, because of the surprising ways in which the patterns can evolve.
Life provides an example of. Scholars in various fields, such as, and have made use of the way that complex patterns can emerge from the implementation of the game's simple rules. The game can also serve as a didactic, used to convey the somewhat counter-intuitive notion that design and organization can spontaneously emerge in the absence of a designer. For example, cognitive scientist has used the analogy of Conway's Life 'universe' extensively to illustrate the possible evolution of complex philosophical constructs, such as and, from the relatively simple set of deterministic physical laws, which might govern our universe.The popularity of Conway's Game of Life was helped by its coming into being just in time for a new generation of inexpensive computer access which was being released into the market. The game could be run for hours on these machines, which would otherwise have remained unused at night. In this respect, it foreshadowed the later popularity of computer-generated.
For many, Life was simply a programming challenge: a fun way to use otherwise wasted cycles. For some, however, Life had more philosophical connotations.
It developed a cult following through the 1970s and beyond; current developments have gone so far as to create theoretic emulations of computer systems within the confines of a Life board. Examples of patterns Many different types of patterns occur in the Game of Life, which are classified according to their behaviour. Common pattern types include:, which do not change from one generation to the next;, which return to their initial state after a finite number of generations; and, which translate themselves across the grid.The earliest interesting patterns in the Game of Life were discovered without the use of computers. The simplest still lifes and oscillators were discovered while tracking the fates of various small starting configurations using, and physical game boards, such as those used in. During this early research, Conway discovered that the R- failed to stabilize in a small number of generations. In fact, it takes 1103 generations to stabilize, by which time it has a population of 116 and has generated six escaping; these were the first spaceships ever discovered.Frequently occurring examples (in that they emerge frequently from a random starting configuration of cells) of the three aforementioned pattern types are shown below, with live cells shown in black and dead cells in white.
Period refers to the number of ticks a pattern must iterate through before returning to its initial configuration. Still lifesBlockBee-hiveLoafBoatTubOscillatorsBlinker(period 2)Toad(period 2)Beacon(period 2)Pulsar(period 3)Penta-decathlon(period 15)SpaceshipsGliderLight-weightspaceship(LWSS)Middle-weightspaceship(MWSS)Heavy-weightspaceship(HWSS)The pulsar is the most common period 3 oscillator.
The great majority of naturally occurring oscillators are period 2, like the blinker and the toad, but oscillators of many periods are known to exist, and oscillators of periods 4, 8, 14, 15, 30 and a few others have been seen to arise from random initial conditions. Patterns which evolve for long periods before stabilizing are called, the first-discovered of which was the R-pentomino. Diehard is a pattern that eventually disappears, rather than stabilizing, after 130 generations, which is conjectured to be maximal for patterns with seven or fewer cells. Acorn takes 5206 generations to generate 633 cells, including 13 escaped gliders.
AcornConway originally conjectured that no pattern can grow indefinitely—i.e., that for any initial configuration with a finite number of living cells, the population cannot grow beyond some finite upper limit. In the game's original appearance in 'Mathematical Games', Conway offered a prize of fifty dollars to the first person who could prove or disprove the conjecture before the end of 1970. The prize was won in November by a team from the, led by; the 'Gosper glider gun' produces its first glider on the 15th generation, and another glider every 30th generation from then on. For many years, this glider gun was the smallest one known. In 2015, a gun called the 'Simkin glider gun', which releases a glider every 120th generation, was discovered that has fewer live cells but which is spread out across a larger bounding box at its extremities. Gosper glider gunSmaller patterns were later found that also exhibit infinite growth. All three of the patterns shown below grow indefinitely.
The first two create a single block-laying switch engine: a configuration that leaves behind two-by-two still life blocks as its translates itself across the game's universe. The third configuration creates two such patterns. The first has only ten live cells, which has been proven to be minimal. The second fits in a five-by-five square, and the third is only one cell high.Later discoveries included other, which are stationary, and which produce gliders or other spaceships;, which move along leaving behind a trail of debris; and, which move and emit spaceships. Gosper also constructed the first pattern with an, called a or lobster, which worked by leaving behind a trail of guns.It is possible for gliders to interact with other objects in interesting ways. For example, if two gliders are shot at a block in a specific position, the block will move closer to the source of the gliders.
If three gliders are shot in just the right way, the block will move farther away. This sliding block memory can be used to simulate a. It is possible to construct such as, and using gliders. It is possible to build a pattern that acts like a connected to two counters. This has the same computational power as a, so the Game of Life is theoretically as powerful as any computer with unlimited memory and no time constraints; it is.
In fact, several different programmable computer architectures have been implemented in Conway's Life, including a pattern that simulates Tetris.Furthermore, a pattern can contain a collection of guns that fire gliders in such a way as to construct new objects, including copies of the original pattern. A universal constructor can be built which contains a Turing complete computer, and which can build many types of complex objects, including more copies of itself.On March 6, 2018, the first truly elementary knightship, Sir Robin, was discovered by Adam P. A knightship is a spaceship that moves two squares left for every one square it moves down, as opposed to normal spaceships which move side to side, or a glider which moves exactly diagonally. This is the first new spaceship movement pattern for an elementary spaceship found in forty-eight years.
'Elementary' means that it cannot be decomposed into smaller interacting patterns such as gliders and still lifes. Undecidability Many patterns in the Game of Life eventually become a combination of still lifes, oscillators, and spaceships; other patterns may be called chaotic. A pattern may stay chaotic for a very long time until it eventually settles to such a combination.Life is, which means that given an initial pattern and a later pattern, no algorithm exists that can tell whether the later pattern is ever going to appear. This is a corollary of the: the problem of determining whether a given program will finish running or continue to run forever from an initial input.Indeed, since Life includes a pattern that is equivalent to a (UTM), this deciding algorithm, if it existed, could be used to solve the halting problem by taking the initial pattern as the one corresponding to a UTM plus an input, and the later pattern as the one corresponding to a halting state of the UTM. It also follows that some patterns exist that remain chaotic forever. If this were not the case, one could progress the game sequentially until a non-chaotic pattern emerged, then compute whether a later pattern was going to appear.Self-replication On May 18, 2010, Andrew J.
Wade announced a self-constructing pattern, dubbed 'Gemini', that creates a copy of itself while destroying its parent. This pattern replicates in 34 million generations, and uses an instruction tape made of gliders oscillating between two stable configurations made of Chapman-Greene construction arms. These, in turn, create new copies of the pattern, and destroy the previous copy. Gemini is also a spaceship, and is the first spaceship constructed in the Game of Life that is an oblique spaceship, which is a spaceship that is neither orthogonal nor purely diagonal.
In December 2015, diagonal versions of the Gemini were built.On November 23, 2013, Dave Greene built the first in Conway's Game of Life that creates a complete copy of itself, including the instruction tape.In October 2018, Adam P. Goucher finished his construction of the 0E0P metacell, a metacell capable of self-replication. This differed from previous metacells, such as the OTCA metapixel by Brice Due, which only worked with already constructed copies near them. The 0E0P metacell works by using construction arms to create copies that simulate the programmed rule.
The actual simulation of Conway's Life or other rules is done by simulating an equivalent rule using the with more states. The name 0E0P is short for 'Zero Encoded by Zero Population', which indicates that instead of a metacell being in an 'off' state simulating empty space, the 0E0P metacell removes itself when the cell enters that state, leaving a blank space. Iteration From most random initial patterns of living cells on the grid, observers will find the population constantly changing as the generations tick. The patterns that emerge from the simple rules may be considered a form of. Small isolated sub patterns with no initial symmetry tend to become symmetrical.
Once this happens, the symmetry may increase in richness, but it cannot be lost unless a nearby sub pattern comes close enough to disturb it. In a very few cases the society eventually dies out, with all living cells vanishing, though this may not happen for a great many generations. Most initial patterns eventually burn out, producing either stable figures or patterns that oscillate forever between two or more states; many also produce one or more gliders or spaceships that travel indefinitely away from the initial location. Because of the nearest-neighbour based rules, no information can travel through the grid at a greater rate than one cell per unit time, so this velocity is said to be the and denoted c.Algorithms Early patterns with unknown futures, such as the R-pentomino, led computer programmers across the world to write programs to track the evolution of Life patterns. Most of the early were similar: they represented Life patterns as two-dimensional arrays in computer memory. Typically two arrays are used: one to hold the current generation, and one to calculate its successor.
Often 0 and 1 represent dead and live cells respectively. A nested considers each element of the current array in turn, counting the live neighbours of each cell to decide whether the corresponding element of the successor array should be 0 or 1. High school timetable generator online.
The successor array is displayed. For the next iteration, the arrays swap roles so that the successor array in the last iteration becomes the current array in the next iteration.A variety of minor enhancements to this basic scheme are possible, and there are many ways to save unnecessary computation. A cell that did not change at the last time step, and none of whose neighbours changed, is guaranteed not to change at the current time step as well. So, a program that keeps track of which areas are active can save time by not updating inactive zones.
Game of life on surface ofTo avoid decisions and branches in the counting loop, the rules can be rearranged from an approach of the inner field regarding its neighbours to a scientific observer's viewpoint: if the sum of all nine fields in a given neighbourhood is three, the inner field state for the next generation will be life; if the all-field sum is four, the inner field retains its current state; and every other sum sets the inner field to death.If it is desired to save memory, the storage can be reduced to one array plus two line buffers. One line buffer is used to calculate the successor state for a line, then the second line buffer is used to calculate the successor state for the next line. The first buffer is then written to its line and freed to hold the successor state for the third line. If a array is used, a third buffer is needed so that the original state of the first line in the array can be saved until the last line is computed. Red glider on the square lattice with periodic boundary conditionsIn principle, the Life field is infinite, but computers have finite memory. This leads to problems when the active area encroaches on the border of the array. Programmers have used several strategies to address these problems.
The simplest strategy is simply to assume that every cell outside the array is dead. This is easy to program but leads to inaccurate results when the active area crosses the boundary. A more sophisticated trick is to consider the left and right edges of the field to be stitched together, and the top and bottom edges also, yielding a array.
The result is that active areas that move across a field edge reappear at the opposite edge. Inaccuracy can still result if the pattern grows too large, but there are no pathological edge effects. Techniques of dynamic storage allocation may also be used, creating ever-larger arrays to hold growing patterns.
Life on a finite field is sometimes explicitly studied; some implementations, such as, support a choice of the standard infinite field, a field infinite only in one dimension or a finite field, with a choice of topologies such as a cylinder, a torus or a.Alternatively, the programmer may abandon the notion of representing the Life field with a 2-dimensional array, and use a different data structure, such as a vector of coordinate pairs representing live cells. This approach allows the pattern to move about the field unhindered, as long as the population does not exceed the size of the live-coordinate array.
The drawback is that counting live neighbours becomes a hash-table lookup or search operation, slowing down simulation speed. With more sophisticated data structures this problem can also be largely solved.For exploring large patterns at great time depths, sophisticated algorithms such as may be useful. There is also a method, applicable to other cellular automata too, for implementation of the Game of Life using arbitrary asynchronous updates whilst still exactly emulating the behaviour of the synchronous game. Examples that implement the basic Game of Life scenario in various programming languages, including, and can be found at. Variations. Main article:Since Life 's inception, new, similar cellular automata have been developed.
The standard Game of Life is symbolized as B3/S23. A cell is Born if it has exactly three neighbours, Survives if it has two or three living neighbours, and dies otherwise. The first number, or list of numbers, is what is required for a dead cell to be born. The second set is the requirement for a live cell to survive to the next generation. Hence B6/S16 means 'a cell is born if there are six neighbours, and lives on if there are either one or six neighbours'. Cellular automata on a two-dimensional grid that can be described in this way are known as.
Another common Life-like automaton, is described by the rule B36/S23, because having six neighbours, in addition to the original game's B3/S23 rule, causes a birth. HighLife is best known for its frequently occurring replicators.Additional Life-like cellular automata exist. The vast majority of these 2 18 different rules produce universes that are either too chaotic or too desolate to be of interest, but a large subset do display interesting behavior.
A further generalization produces the isotropic rulespace, with 2 102 possible CA rules (Conway's Life again being one of them). These are rules that use the same square grid as the Life-like rules and the same eight-cell neighbourhood, and are likewise invariant under rotation and reflection. However, in isotropic rules, the positions of neighbour cells relative to each other may be taken into account in determining a cell's future state—not just the total number of those neighbours. A sample of a 48-step oscillator along with a 2-step oscillator and a 4-step oscillator from a 2-D hexagonal Game of Life (rule H:B2/S34)Some variations on Life modify the geometry of the universe as well as the rule. The above variations can be thought of as 2-D square, because the world is two-dimensional and laid out in a square grid. One-dimensional square variations, known as, and 3-D square variations have been developed, as have 2-D hexagonal and 2-D triangular variations.
A variant using non-periodic tile grids has also been made.Conway's rules may also be generalized such that instead of two states, live and dead, there are three or more. State transitions are then determined either by a weighting system or by a table specifying separate transition rules for each state; for example, 's multi-coloured Rules Table and Weighted Life rule families each include sample rules equivalent to Conway's Life.Patterns relating to fractals and fractal systems may also be observed in certain Life-like variations. For example, the automaton B1/S12 generates four very close approximations to the when applied to a single live cell. The Sierpinski triangle can also be observed in Conway's Game of Life by examining the long-term growth of a long single-cell-thick line of live cells, as well as in Highlife, and Wolfram's.Immigration is a variation that is very similar to Conway's Game of Life, except that there are two on states, often expressed as two different colours. Whenever a new cell is born, it takes on the on state that is the majority in the three cells that gave it birth. This feature can be used to examine interactions between and other objects within the game. Another similar variation, called QuadLife, involves four different on states.
When a new cell is born from three different on neighbours, it takes on the fourth value, and otherwise, like Immigration, it takes the majority value. Except for the variation among on cells, both of these variations act identically to Life.Music Various musical composition techniques use Conway's Life, especially in sequencing.
A variety of programs exist for creating sound from patterns generated in Life. Notable programs. The 6,366,548,773,467,669,985,195,496,000th (6 ) generation of a, made in the game of Life, computed in less than 30 seconds on an Core Duo 2 GHz CPU using Golly in modeComputers have been used to follow Life configurations since it was first publicized. When John Conway was first investigating how various starting configurations developed, he tracked them by hand using a board with its black and white stones. This was tedious and prone to errors. While Conway was investigating the R-pentomino, John Francis, an undergraduate student at The, wrote a program (for an IBM 360 at the nearby Institute of Theoretical Astronomy) to check Conway's results.
This program showed that the configuration had not reached a stable state after 1000 generations.The first interactive Life program was written in for the. The results were published in the October 1970 issue of, along with the statement: 'Without its help, some discoveries about the game would have been difficult to make.' Two early implementations of Life on home computers were by Malcolm Banthorpe written in. The first was in the January 1984 issue of magazine and Banthorpe followed this with a 3D version in the May 1984 issue (these can be downloaded as PDFs).Susan Stepney, Professor of Computer Science at the, followed this up in 1988 with 'Life on the line', a program that generated one-dimensional cellular automata.There are now thousands of Life programs online, so a full list will not be provided here. The following is a small selection of programs with some special claim to notability, such as popularity or unusual features.
Most of these programs incorporate a graphical user interface for pattern editing and simulation, the capability for simulating multiple rules including Life, and a large library of interesting patterns in Life and other CA rules. is a cross-platform (Windows, Macintosh, Linux and also iOS and Android) open-source simulation system for Life and other cellular automata (including all Life-like cellular automata, the Generations family of cellular automata from Mirek's Cellebration, John von Neumann's 29-state cellular automaton, and others), by Andrew Trevorrow and Tomas Rokicki.
It includes the Hashlife algorithm for extremely fast generation, and or scriptability for both editing and simulation. Mirek's Cellebration is a freeware 1-D and 2-D cellular automata viewer, explorer and editor for Windows. It includes powerful facilities for simulating and viewing a wide variety of CA rules including Life, and a scriptable editor. Xlife is a cellular-automaton laboratory by Jon Bennett. The standard UNIX X11 Life simulation application for a long time, it has also been ported to Windows. It can handle cellular automaton rules with the same neighbourhood as Life, and up to eight possible states per cell.Google implemented an of Conway's Game of Life in 2012. (October 1970).
Scientific American. 223 (4): 120–123. Retrieved 2011-06-26. Wolfram, Stephen (2002).
Wolfram Media, Inc. P. 1179. Wolfram, Stephen (2002). Wolfram Media, Inc. P. 877. Conway, private communication to the 'Life list', 14 April 1999. ^ It is a model and simulation that is interesting to watch and can show that simple things can become complicated problems.
Paul Chapman (11 November 2002). Retrieved 12 July 2009. ^;; (2001–2004). A K Peters Ltd. Wolfram, Stephen (2002). Wolfram Media, Inc. P. 877.
Gardner, Martin (October 1970). (223): 120–123. Dennett, D. Consciousness Explained. Boston: Back Bay Books.
Dennett, D. Darwin's Dangerous Idea: Evolution and the Meanings of Life. New York: Simon & Schuster. Dennett, D.
Freedom Evolves. New York: Penguin Books. Paul Rendell (January 12, 2005). Retrieved July 12, 2009. Adam P. Retrieved July 12, 2009. Retrieved July 12, 2009.
Stephen A. The Life Lexicon. Retrieved March 4, 2019. The Online Life-Like CA Soup Search. Archived from on 2009-09-10. Retrieved July 12, 2009. Achim Flammenkamp (1995-12-09).
Retrieved July 10, 2012. Stephen A. The Life Lexicon. Retrieved March 4, 2019., Jason Summers, retrieved 2012-02-23. Achim Flammenkamp (2004-09-07). Retrieved 2008-09-16. Stephen A.
The Life Lexicon. Retrieved March 4, 2019. Koenig, H.
(February 21, 2005). Retrieved January 24, 2009. Stephen A.
The Life Lexicon. Retrieved March 4, 2019., ConwayLife forums, April 28th, 2015, posts by Michael Simkin ('simsim314') and Dongook Lee ('Scorbie'). Retrieved July 12, 2009. Stephen A. The Life Lexicon.
Retrieved March 4, 2019. Stephen A.
The Life Lexicon. Retrieved March 4, 2019. Conwaylife.com forums. Retrieved August 23, 2018. Paul Rendell. Retrieved August 23, 2018. Retrieved August 23, 2018.
Retrieved 9 March 2018., LifeWiki, retrieved 2018-11-21. Elwyn R. Berlekamp, John H. Conway, and Richard K. Guy, Winning Ways for your Mathematical Plays. Academic Press, 1982. Retrieved 2012-06-24.
Retrieved 2012-06-24. Aron, Jacob (16 June 2010). New Scientist. Retrieved 12 October 2013. Retrieved 2013-10-16. Retrieved 18 June 2016.
Retrieved 2015-06-25. Passe-Science (2019-05-29), retrieved 2019-06-25. apgoucher (2018-11-12).
Complex Projective 4-Space. Retrieved 2019-06-25. Retrieved 2019-06-24. Andrzej Okrasinski.
Archived from on 2009-07-27. Retrieved July 12, 2009. Nathaniel Johnston. Archived from on 2009-09-10.
Retrieved July 12, 2009. Alan Hensel. Retrieved July 12, 2009. Nehaniv, Chrystopher L. (15–18 July 2002). Alexandria, Virginia, USA: IEEE Computer Society Press.
Archived from on April 3, 2015. Retrieved 17 March 2015. by David Bell (.zip file). Stephen A. The Life Lexicon. Retrieved March 4, 2019. Retrieved March 4, 2019.
Retrieved March 4, 2019. Wolfram Mathworld. Retrieved July 12, 2009. New Scientist. Retrieved July 12, 2009. ConwayLife.com forums.
Retrieved July 12, 2009. Stephen A. The Life Lexicon. Retrieved March 4, 2019. Stephen A. The Life Lexicon. Retrieved March 4, 2019.
Burraston, Dave; Edmonds, Ernest; Livingstone, Dan; (2004). Proceedings of the 2004 International Computer Music Conference. Retrieved 2012-06-24. Retrieved 2012-06-24. Retrieved 2012-06-24. Gardner, Martin (October 1970). 'Mathematical Games: The fantastic combinations of John Conway's new solitaire game 'Life '.
Scientific American. 223 (4): 120–123.
The BBC and Master Computer Public Domain Library. Retrieved 2018-12-29. Stepney, Susan. Retrieved 2018-12-29.External links Wikimedia Commons has media related to. at., extensive lexicon with many patterns., an online database of objects in Conway's Game of Life and similar cellular automata.
One of my homework questions was to find the 3rd element stored in an array in MIPS, here is my code la $t0, array0 # Loads the address of variable array0 into $t0lw $t1, 12($t0) # Loads the value of the 3rd element of variable array0 using the address stored of array0 in $t0 into $t1li $v0, 1 # Set $v0 to 1, this tells syscall to # print the integer specified by $t1syscall # Now print the integerNow the next instruction is to store the value in the register $s2. My confusion at this moment is whether to use SW(store word) $s2, $t1 or LW(load word) $s2, $t1. If anyone could please give a sound explanation of the what the correct answer is and how to figure out when to use SW or LW, would be very much appreciated. $begingroup$ Interestingly, MIPS (at least Releases 5 and 6, as far as I can tell) do not define a canonical MOV instruction. This may be a bit painful if an implementation decides to do move elimination. Also interesting (to me at least) is MIPS calling such 'assembly idioms', but applying the same term to instructions that have semantic differences from the normal interpretation of the instruction encoding such as Superscalar NOP and Execution Hazard Barrier. $endgroup$–Oct 5 '14 at 20:38.
Wikipedia gives a reasonable overview ofAFAIK, MIPS assemblers support the move instruction, so move $s2, $t1 would 'just work'.It uses a different instruction to achieve the effect (maybe add $s2, $t1, $zero,. ) however move is easier to read and understand.IMHO the notation used at wikipedia is quite helpful: lw $t,C($s) # $t = Memory$s + Csw $t,C($s) # Memory$s + C = $tIf you are using 'SPIM Simulator', then this says that printint, which is called with $v0 = 1, which is your example code, has the parameter, the integer to be printed, in $a0.So if the intention is to print the third integer in the array, it would be better to load that 3rd value from the array into $a0, and not $t1, i.e. Lw $a0, 12($t0).