Группа команд обработки данных состоит из команд арифметических, логических и команд передачи 8-, 16 — и 32-разрядных данных. (Описание команд см. в Приложении 6.)
Методы адресации данных в архитектуре MCS-251 следующие:
Регистровая адресация. В архитектуре MCS-251 при использовании регистровой адресации операнд(ы) команд обработки данных расположены в регистрах длиной байт (R0.R15), слово (WR0,WR2,., WR30) или двойное слово (DRO, DR4.DR28, DR56, DR60).
В архитектуре MCS-51 операнды располагаются только в регистрах R0.R7.
Непосредственная адресация. Архитектура MCS-251. В режиме непосредственной адресации операнды содержатся в самой команде. При операциях с байтами используются 8-битовые непосредственные данные (#data); при операциях со словами — 16-разрядные непосредственные данные (#datal6). При операциях с двойными словами используются 16-разрядные непосредственные данные в младшем слове и восемь нулей (записывается как #0datal6) или восемь единиц (записывается как #1 data 16) в старшем слове. Команды MOV, в которых 16-разрядные непосредственные данные пересылаются в регистр двойного слова (DRk), помещают данные либо в старшее слово регистра, не меняя его младшего слова, либо в младшее слово, при знаковом или нулевом расширении в старшее слово. В командах инкремента и декремента содержатся непосредственные данные (#short =1,2 или 4), указывающие на число операций инкремент-декремент.
Архитектура MCS-51. В командах используются только 8-битовые непосредственные данные (#data).
Прямая адресация. Архитектура MCS-251. При прямой адресации в команде содержится адрес операнда. 8-разрядный режим прямой адресации адресует как байты, так и слова внутреннего ОЗУ (dir8 * 00:0000H.00:007FH), а также регистры SFR (dir8 = S:080H.S:1FFH), но только байтовой длины. 16-разрядный режим прямой адресации адресует как байты, так и слова в памяти (dirl6 = 00:0000H.00:FFFFH).
Архитектура MCS-51. 8-разрядный режим прямой адресации адресует 256 байт внутреннего ОЗУ (dir8 — 00H.7FH) только как байты и регистры SFR (dir8 e 80H.FFH), тоже только как байты.
Косвенная адресация. В арифметических и логических командах с косвенной адресацией операндом-источником всегда служит байт, а операндом-приемником либо аккумулятор, либо байтовый регистр (R0-R15). Адресом источника служит байт, слово или двойное слово. В рассматриваемых архитектурах косвенная адресация выпоняется через разные регистры.
Архитектура MCS-251. Память адресуется косвенно через регистры слова и двойного слова:
регистр длиной в слово (@WRj,j в 0, 2, 4, 30). 16-разрядный адрес в WRj может адресовать ячейки 00:0000H.00:FFFFH.
регистр двойное слово (@DRk,k — 0, 4, 8,28, 56 и 60). 24 младших значащих бита могут адресовать полное 16-Мбайт адресное пространство. Старшие восемь бит DRk должны быть равны 0. (Если DR60 используется как указатель данных общего назначения, необходимо, чтобы DR60 был указателем расширенного стека DRX.)