PDA

Դիտել ողջ տարբերակը : Assembler



AMD
15.04.2006, 11:50
Ով կարա int 9h ընդհատման մասին տեղեկություններ տա:
իսկ ավելի կոնկրետ թե ինչպեսա աշխատում

SpectruM
06.06.2006, 14:41
The Keyboard is the primary method for grabbing input from users. When
a key is hit, an interrupt is generated ( INT 9 ). The latter reads the
Scan Code generated by the keyboard ( A Scan Code is one or more bytes
generated by the keyboard as a result of a key pressed or released - Each
key on the Keyboard generates a unique Scan Code ). INT 9H also provides
a mechanism for Scan Code Translation. INT 9H calls INT 15/4F with the
Scan Code of the key pressed before processing the Scan Code. The INT 15/4F
handler may instruct INT 9H to either ignore the key pressed or translate
the Scan Code to another value.
A user-defined INT 15/4F handler can therefore be used to *disable* a
particular key and/or to change the Scan Code it effectively generates.
The following example illustrates Scan Code translation. The ESC's Scan Code
is translated to that of an 'A'.

The Handler also instruct INT 9H to ignore the DEL Key. Therefore the
user is unable to reboot the machine using CRTL-ALT-DEL while the Handler
is active

AMD
06.06.2006, 15:44
արդեն ճարել եմ եթե ուզում էք կտամ
էդ գրքից ես գրել եթե էլեկտրոնային տարբերակը ունես տուր

_DEATH_
26.07.2007, 23:00
Ժողովուրդ մի հատ նորմալ գիրք ասեք էլի Assembler սովորացնող
անգլերեն լեզվով, սկսնակների համար չլինի, մեկել սաղ գիրքը մենակ սովորական ռեժիմի ծրագրերի մասին չլինի:
Կանխավ շնորհակալ եմ :)

Maska
27.07.2007, 08:13
Ժողովուրդ մի հատ նորմալ գիրք ասեք էլի Assembler սովորացնող
անգլերեն լեզվով, սկսնակների համար չլինի, մեկել սաղ գիրքը մենակ սովորական ռեժիմի ծրագրերի մասին չլինի:
Կանխավ շնորհակալ եմ :)
ես սայթում http://samouchka.net/ebooks/assembler/ մի քանի հատ տենց գիրք է ` աչքովս ընկել դու նայի ընտրի

_DEATH_
27.07.2007, 12:29
ես սայթում http://samouchka.net/ebooks/assembler/ մի քանի հատ տենց գիրք է ` աչքովս ընկել դու նայի ընտրի

մերսի :), բայց ինչքան հասկացա ռուսերեն գրքեր են, ես ռուսերեն մինչև մի հատ գիրք կարդամ ձմեռ կգա:
Ինձ ուղակի կոնկրետ գրքի անունա պետք, որ լավագույններից լինի, թե չէ կալեկցիա եմ հավաքել, չգիտեմ որ մեկը կարդամ:

Ռեդ
22.10.2008, 12:50
Ի՞նչ գիրք, կամ կայք խորհուրդ կտաք ասսեմբլեր զրոյից սովորելու համար :think
Ցանկալի է մեծ արխիվ ունեցող կայք, որ ինֆոն շատ լինի, բայց և հեշտ լինի :oy

jorazak
25.11.2009, 02:23
Ժողովուրդ մի հատ նորմալ գիրք ասեք էլի Assembler սովորացնող
անգլերեն լեզվով, սկսնակների համար չլինի, մեկել սաղ գիրքը մենակ սովորական ռեժիմի ծրագրերի մասին չլինի:
Կանխավ շնորհակալ եմ :)

ԵՊՀ գրադարանում կա Peter Abel - IBM PC Assembly Language and Programming գիրքը: Ահագին բան կա գրած պաշտպատված ռեժիմի մասին: Ես ինքս վերցրել եմ: Խորհուրդ եմ տալիս և քեզ:

vavav
12.01.2011, 22:06
ով կարա իրական ռեժիմում հասցեի կազմավորման մասին տեղեկություն տա??

bugron
29.05.2011, 21:37
ով կարա իրական ռեժիմում հասցեի կազմավորման մասին տեղեկություն տա??

Խոսքը ինչի հասցեի մասին է?

bugron
29.05.2011, 22:25
ով կարա իրական ռեժիմում հասցեի կազմավորման մասին տեղեկություն տա??

Խնդրում եմ մոդերատորին ներել, թարգմանած գրելու ժամանակ չկար"
Հույս ունեմ կօգնի.

Адресация памяти в реальном режиме
Процессор 8086 имел 20-битную адресную шину и поэтому способен был
адресовать только 2^20 байтов (1 Мб) оперативной памяти. Но мы знаем, что
его регистры были 16-битными: как же он мог тогда адресовать 20 битов
адресной шины?
Ответ находится в сегментных регистрах. Окончательный адрес, «сброшен­
ный» на адресную шину, получался как сумма значений соответствующего
16-битного регистра и сегментного регистра, умноженного на 16.
Следующий пример поможет понять, как рассчитывается физический
адрес:
mov al, [ds:si] ;загрузить в AL содержание памяти
;по адресу ds:si
Предположим, что DS = 0х559Е, а SI имеет значение 0x100.
Вычислить окончательный 20-битный адрес можно следуюш,им образом:
0х559Е * 0x10 (0x10 равно 16) + 0x100
Желаемое значение будет загружено с адреса памяти: 0х559Е0 4- 0x100 =
0х55АЕ0.
Значение сегментного регистра называется сегментом, а другое значение (то,
которое содержится в регистре общего назначения или указано как непо­
средственное значение) называется смещением (offset).
Заметим, что адрес 0х55АЕ0 также может определяться другими парами сег­
ментов и смещений, например, сегментом 0х558Е и смещением 0x200.
Адресация, использующая сегменты и смещения, имеет массу недостатков.
Смещение может быть только 16-битным, и поэтому полный размер одного
сегмента в памяти ограничен объемом 64 Кб. Программа, код или данные
которой превышают 64 Кб, должна быть разделена на несколько сегментов.
При необходимости в сегментные регистры должны быть загружены другие
адреса. Решение проблемы, которая возникает при делении программы на
несколько сегментов, будет рассмотрено в параграфе 10.4.
Для сохранения совместимости даже новейшие процессоры поддерживают
16-битную адресацию в реальном режиме. Поэтому можно запустить самую
древнюю DOS-программу, в том числе и саму DOS, на новейших х86-совме-
стимых процессорах.

Ավելի մանրամասն` այստեղ (http://www.multiupload.com/00U0WCZPGT)