русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Команды пересылки данных микроконтроллера 8051.


Дата добавления: 2014-11-27; просмотров: 1048; Нарушение авторских прав


Эта группа представлена 28 командами, их краткое описание приведено в таблице, где также указаны тип команды (Т) в соответствии с таблицей, ее длина в байтах (Б) и время выполнения в машинных циклах (Ц).

 

Таблица.7.Команды передачи данных

Название команды Мнемокод КОП Т Б Ц Операция
Пересылка в аккумулятор из регистра (n=0÷7) MOV A, Rn 11101rrr 182. 1 183. 1 184. 1 (A) (Rn)
Пересылка в аккумулятор прямоадресуемого байта MOV A, ad 185. 3 186. 2 187. 1 (A) (ad)
Пересылка в аккумулятор байта из РПД (i=0,1) MOV A, @Ri 1110011i 188. 1 189. 1 190. 1 (A) ((Ri))
Загрузка в аккумулятор константы MOV A, #d 191. 2 192. 2 193. 1 (A) #d
Пересылка в регистр из аккумулятора MOV Rn, A 11111rrr 194. 1 195. 1 196. 1 (Rn) (A)
Пересылка в регистр прямоадресуемого байта MOV Rn, ad 10101rrr 197. 3 198. 2 199. 2 (Rn) (ad)
Загрузка в регистр константы MOV Rn, #d 01111rrr 200. 2 201. 2 202. 1 (Rn) #d
Пересылка по прямому адресу аккумулятора MOV ad, A 203. 3 204. 2 205. 1 (ad) (A)
Пересылка по прямому адресу регистра MOV ad, Rn 10001rrr 206. 3 207. 2 208. 2 (ad) (Rn)
Пересылка прямоадресуемого байта по прямому адресу MOV add, ads 209. 9 210. 3 211. 2 (add) (ads)
Пересылка байта из РПД по прямому адресу MOV ad, @Ri 1000011i 212. 3 213. 2 214. 2 (ad) ((Ri))
Пересылка по прямому адресу константы MOV ad, #d 215. 7 216. 3 217. 2 (ad) #d
Пересылка в РПД из аккумулятора MOV @Ri, A 1111011i 218. 1 219. 1 220. 1 ((Ri)) (A)
Пересылка в РПД прямоадресуемого байта MOV @Ri, ad 0110011i 221. 3 222. 2 223. 2 ((Ri)) (ad)
Пересылка в РПД константы MOV @Ri, #d 0111011i 224. 2 225. 2 226. 1 ((Ri)) #d
Загрузка указателя данных MOV DPTR, #d16 227. 13 228. 3 229. 2 (DPTR) #d16
Пересылка в аккумулятор байта из ПП MOVC A, @A+DPTR 230. 1 231. 1 232. 2 ((A) +(DPTR))
Пересылка в аккумулятор байта из ПП MOVC A, @A+PC 233. 1 234. 1 235. 2 (PC) (PC)+1, (A) ((A)+(PC))
Название команды Мнемокод КОП Т Б Ц Операция
Пересылка в аккумулятор байта из ВПД MOVX A, @Ri 1110001i 236. 1 237. 1 238. 2 (A) ((Ri))
Пересылка в аккумулятор байта из расширенной ВПД MOVX A,@DPTR 239. 1 240. 1 241. 2 (A) ((DPTR))
Пересылка в ВПД из аккумулятора MOVX @Ri, A 1111001i 242. 1 243. 1 244. 2 ((Ri)) (A)
Пересылка в расширенную ВПД из аккумулятора MOVX @DPTR,A 245. 1 246. 1 247. 2 ((DPTR)) (A)
Загрузка в стек PUSH ad 248. 3 249. 2 250. 2 (SP) (SP) + 1, ((SP)) (ad)
Извлечение из стека POP ad 251. 3 252. 2 253. 2 (ad) (SP), (SP) (SP) - 1
Обмен аккумулятора с регистром XCH A, Rn 11001rrr 254. 1 255. 1 256. 1 (A) ↔ (Rn)
Обмен аккумулятора с прямоадресуемым байтом XCH A, ad 257. 3 258. 2 259. 1 (A) ↔ (ad)
Обмен аккумулятора с байтом из РПД XCH A, @Ri 1100011i 260. 1 261. 1 262. 1 (A) ↔ ((Ri))
Обмен младших тетрад аккумулятора и байта РПД XCHD A, @Ri 1101011i 263. 1 264. 1 265. 1 (A0…3) ↔((Ri)0…3)

 



По команде MOV выполняется пересылка данных из второго операнда в первый. Эта команда не имеет доступа ни к внешней памяти данных, ни к памяти программ. Для этих целей предназначены команды M0VX и MOVC соответственно. Первая из них обеспечивает чтение/запись байт из внешней памяти данных, вторая – чтение байт из памяти программ.

По команде XCH выполняется обмен байтами между аккумулятором и ячейкой РПД, а по команде XCHD – обмен младшими тетрадами (битами 0 – 3).

Команды PUSH и РОР предназначены соответственно для записи данных в стек и их чтения из стека. Размер стека ограничен лишь размером резидентной памяти данных. В процессе инициализации микро-ЭВМ после сигнала сброса или при включении питающего напряжения в SP заносится код 07Н. Это означает, что первый элемент стека будет располагаться в ячейке памяти с адресом 08Н.

Группа команд пересылок микроконтроллера имеет следующую особенность - в ней нет специальных команд для работы со специальными регистрами: PSW, таймером, портами ввода-вывода. Доступ к ним, как и к другим регистрам специальных функций, осуществляется заданием соответствующего прямого адреса, т.е. это команды обычных пересылок, в которых вместо адреса можно ставить название соответствующего регистра. Например, чтение PSW в аккумулятор может быть выполнено командой

MOV A, PSW

которая преобразуется Ассемблером к виду

MOV А, 0D0h (E5 D0),

где Е5 – код операции, а D0 – операнд (адрес PSW).

Кроме того, следует отметить, что в микро-ЭВМ аккумулятор имеет два различных имени в зависимости от способа адресации: А – при неявной адресации (например, MOV A, R0) и АСС – при использовании прямого адреса. Первый способ предпочтительнее, однако, не всегда применим.



<== предыдущая лекция | следующая лекция ==>
Группы команд. | Команды арифметических операций 8051.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.095 сек.