Минимум. Максимум не ограниченaav8 wrote:Это выходит HLT - 2 машинных цикла?

Во всех справочниках количество тактов для команды HLT указано 7. Т.е. как раз два цикла 4+3. Но второй цикл повторяется пока не произойдёт выход из режима останова.
Moderator: Shaos
Минимум. Максимум не ограниченaav8 wrote:Это выходит HLT - 2 машинных цикла?
Мы как бы это давно обсудили - и это действительно так...aav8 wrote:Вот чего откопал:... Заметим, что модификация МП КР580 с индексом А обладает возможностью отработки в режиме прерывания не только команд рестарта, но любой последовательности команд, аппаратно формируемой в этом режиме контроллером прерываний. ...
Факт, обозначенный коллегой aav8, в вышеуказанной книге имеет место быть.Lavr wrote:Альтернатив - нет. Буду почитать.
Чесно говоря с растактовкой пока особенно не заморачивался -Lavr wrote:А по XTHL у тебя какая растактовка? Что-то он мне голову проморочил...aav8 wrote:Это выходит HLT - 2 машинных цикла?![]()
18 тактов 5 циклов.
У меня почему-то получается 4-4-3-4-3... а в другом источнике М1=5... -
совсем не сходится...
По XTHL у меня несколько неожиданная информация:aav8 wrote:Чесно говоря с растактовкой пока особенно не заморачивался -Lavr wrote:А по XTHL у тебя какая растактовка? Что-то он мне голову проморочил...![]()
У меня почему-то получается 4-4-3-4-3... а в другом источнике М1=5... -
совсем не сходится...
в основном расцикловкой - XTHL за пять циклов - все
стандартные по 3 такта ну и ест-но первый за 4 такта.
Тобою ненавистная дока это и не скрывала. Растактовка XTHL следующая: 4+3+3+3+5=18, что коррелируется с цветной табличкой из Радио.Lavr wrote:По XTHL у меня несколько неожиданная информация:
п. 14. Машинный цикл 5 (МЦ5) имеет пять тактов. Используются только в команде XTHL;
Так что 4-4-3-4-3 отпадает как бы однозначно...
А эту схемку чтоб его "дёргать за ножки" я, как мне кажется, и не выкладывал...Kristinka80 wrote:...скачала вашу модель процессора К580ВМ80А но эту схемку для того чтоб его "дёргать за ножки" не получается.
На асме совсем не много.Shaos wrote:Кодить на басике, чтобы потом на асме исравлять - это садомазо высшей степени извращённости...
Code: Select all
!macro CALL arg
! {
! clabel = $
! CALL arg
! plabel = clabel-3
! callsize = $-clabel
! load ops dword from plabel
! load opc byte from plabel+4
! If ops=$FF008B50 & (opc=$10 | opc=$50 | opc=$90)
! If opc=$10
! db $10
! Else If (opc=$50 | opc=$90)
! db $00
! Repeat callsize
! load op byte from clabel+callsize-%
! store byte op at clabel+callsize-%+1
! End Repeat
! End If
! store dword $008BC189 at plabel
! store byte $FF at plabel+4
! End If
! }
Code: Select all
50 PUSH EAX
8B00 MOV EAX, DWORD PTR DS:[EAX]
FF10 CALL DWORD PTR DS:[EAX]
Code: Select all
89C1 MOV ECX, EAX
8B00 MOV EAX, DWORD PTR DS:[EAX]
FF10 CALL DWORD PTR DS:[EAX]
Это все равно что судить о человеке по его национальности, т. е. если у него национальность xxxx, то он недочеловек, а если национальность yyyy, то он суперчеловек. При этом не важно хороший это человек или нет, национальность важнее.Shaos wrote:Бейсик он и в Африке бейсик, даже если компилируется через Ассемблер![]()