[fpc-pascal] Move() vs MemCopy()

Hans MÃ¥rtensson cirkulation at maartensson.net
Wed Sep 30 10:11:49 CEST 2009

Graeme Geldenhuys wrote:

>2009/9/29 Vincent Snijders <vsnijders at vodafonevast.nl>:
>>I never thought that
>>mov ax, bx (8086 assembler)
>>would clear the register after the move.
>If you put it like that, it never (for some strange reason) confused
>be either. :-) I guess that's probably because everything in assembler
>confused me, so nothing stood out above the rest. ;-)

Move was used in assembler code of the first Intel processors and has 
then moved on (!) into later programming languages. It is indeed 
confusing, because we are talking about information, which is not 
located like physical objects. Hence move is meaningless. If you make a 
photocopy, a new representation of the information is made and the paper 
is moved through the maschine, but it makes no sense to say that the 
information is moved.
Yet more confusing, I think, was that the old
   mov a, b (8080 assembler)
normally was understood as "move b into a".
A better translation would be "make a copy in a of b".
So I would say about the use of move: It's not logic, it's tradition.

Hans Maartensson

More information about the fpc-pascal mailing list