First In, First Out is the principle of a queue: what comes in first is handled first, what comes in next waits until the first is finished, etc.
For queueing people, see queue area.
In computer science this term refers to the way data stored in a queue is processed. The first data to be added to the queue will be the first data to be removed. This is typical behavior for a queue, but contrast LIFO and stack.
In electronics a FIFO is a semiconductor memory in which the first data to be written is always the first data to be read. The function is available as an integrated circuit that includes address counters, control logic and SRAM. A FIFO with a clock input is called a synchronous FIFO; otherwise it is asynchronous. The device typically has outputs called flags that indicate when it is empty or full.
In accounting, FIFO is a common method for approximating the value of inventory. It is appropriate where there are many different batches of similar products. The method presumes that the next item to be shipped will be the oldest of that type in the warehouse. In practice, this reflects the underlying commercial substance. See also LIFO in this context.