Форум программистов, компьютерный форум, киберфорум
Assembler: DOS/Real Mode/16-bits
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.84/56: Рейтинг темы: голосов - 56, средняя оценка - 4.84
Модератор
2131 / 1000 / 170
Регистрация: 23.07.2018
Сообщений: 3,349
Записей в блоге: 3

16-bit Real Mode в 2020

30.07.2018, 16:00. Показов 12333. Ответов 51

Студворк — интернет-сервис помощи студентам
Весь 16-битный код в реальном режиме, разработка которого в ближайшее время имеет практический смысл, сосредоточен где-то здесь:
https://github.com/tianocore/e... /Vtf0/Ia16
Если вы разрабатываете firmware для компьютеров с архитектурой x86-64, задача, которую решает код - привести оборудование в рабочее состояние, т.е. в случае процессора - как можно раньше распрощаться с реальным режимом и перевести процессор в штатный Long mode или, как вариант для небольших систем, в защищённый 32-битный режим.

Всё остальное - разновидности музейно-педагогического программирования. В чистом виде залежи музейно-педагогического программирования можно изучать в другом разделе форума: https://www.cyberforum.ru/turbo-pascal/
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.07.2018, 16:00
Ответы с готовыми решениями:

Сколько ядер работает у процессора в Real Mode?
Написал сюда. Ибо в "Процессорах" совсем другое нынче обсуждают. Загружаем с флешки на современный бытовой компьютер с многоядерным...

Ошибка: Нельзя преобразовать тип function x real real к real
Здравствуйте, не могу понять как исправить ошибку (строка 32) var a,b,e,h,xi,fi,ln1,ln2:real; s:longint; n,i:integer; ...

Нельзя преобразовать тип function(x: real): real к real
Ничего не понимаю, почему нельзя? Помогите пожалуйста найти ошибку в коде. uses CRT; type function1=function(x: real): real; ...

51
Прощай, Мир!
 Аватар для proc3nt
1673 / 831 / 253
Регистрация: 26.05.2012
Сообщений: 3,056
13.08.2020, 18:40
Студворк — интернет-сервис помощи студентам
предлагаю переименовать (сократить) название раздела
"Assembler: DOS/Real Mode/16-bits" в просто "Assembler: DOS", т.к. хвост даже ежу понятен..

что скажете??
1
Asm/C++/Delphi/Py/PHP/VBA
 Аватар для Jin X
6808 / 2048 / 238
Регистрация: 14.12.2014
Сообщений: 4,297
Записей в блоге: 12
13.08.2020, 20:26
proc3nt, у нас была тема про переименование подразделов. Но до конца так и не довели. Можно поднять и продолжить там. Найти только её надо.

Музейное программирование ещё очень активно имеет место быть на демосцене. Это такое компьютерное искусство. Устраиваются демопати (в этом году, правда, онлайн), на которых проводятся конкурсы, в т.ч. онлайн.
https://www.pouet.net/prodlist... %5D=MS-Dos

Причём, x86/MS-DOS – не самая распространённая платформа.
Популярны Спектрумы, Amiga, Commodore 64, Atari, встречаются также БК, NES (Dendy), Sega, Nintendo, MSX и т.д.

Ну и современные платформы, разумеется, тоже. Windows, шейдеры и пр.
3
Прощай, Мир!
 Аватар для proc3nt
1673 / 831 / 253
Регистрация: 26.05.2012
Сообщений: 3,056
13.08.2020, 20:31
Цитата Сообщение от Jin X Посмотреть сообщение
Найти только её надо
кто ищет, тот всегда найдёт..
0
Asm/C++/Delphi/Py/PHP/VBA
 Аватар для Jin X
6808 / 2048 / 238
Регистрация: 14.12.2014
Сообщений: 4,297
Записей в блоге: 12
13.08.2020, 20:36
Один чувак сделал тетрис на паяльнике: http://gamebomb.ru/gbnews/20867
Другое – демо на АОН Русь: https://habr.com/ru/post/421961/
0
3410 / 1829 / 489
Регистрация: 28.02.2015
Сообщений: 3,696
13.08.2020, 21:25
Цитата Сообщение от politoto Посмотреть сообщение
Реальный режим это уже аппаратная эмуляция
В каком режиме начинает работать BIOS? Почему?

Если Вы говорите, что ОСь эмулирует Dos, так это началось с WIN'ь 98, 95-я, ещё позволяла перейти в чистый DOS.
0
Модератор
2131 / 1000 / 170
Регистрация: 23.07.2018
Сообщений: 3,349
Записей в блоге: 3
13.08.2020, 22:17  [ТС]
Термин Real Address Mode появился в интеловской документации к iAPX 286 (стр. 3-20)
http://bitsavers.org/component... 6_1982.pdf
для описания аппаратной эмуляции работы iAPX 86 and iAPX 88
Цитата Сообщение от Intel
In Real Address Mode, the iAPX 286 executes unmodified programs from the iAPX 86 and iAPX
88 while providing additional instructions
Пришлось добавлять в писюки схемы управления A20, потому что фактический адрес в режиме эмуляции всё равно был 24-разрядным.
0
Asm/C++/Delphi/Py/PHP/VBA
 Аватар для Jin X
6808 / 2048 / 238
Регистрация: 14.12.2014
Сообщений: 4,297
Записей в блоге: 12
14.08.2020, 17:28
Один чувак сделал тетрис на паяльнике: http://gamebomb.ru/gbnews/20867
Другое – демо на АОН Русь: https://habr.com/ru/post/421961/
Цитата Сообщение от Constantin Cat Посмотреть сообщение
В каком режиме начинает работать BIOS? Почему?
Процессор при старте работает в RM.
http://dims.karelia.ru/x86/initial.shtml
В 286, поскольку не было выхода из PM обратно в RM, переход делали через сброс.
Исследование способов сброса процессора

Добавлено через 4 часа 56 минут

Не по теме:

politoto, Tripple Fault не исследовал :)

0
3410 / 1829 / 489
Регистрация: 28.02.2015
Сообщений: 3,696
14.08.2020, 22:04
Цитата Сообщение от Jin X Посмотреть сообщение
Сообщение от Constantin Cat
Сообщение было не Вам.

О том как Комп переходит от POST - до OS-Load - я знаю.
Вопрос, в другом - RM будет всегда, пока CPU не научат запускаться сразу в PM.


И RM будем терпеть и отвечать на неадекватные вопросы.


хотя, мне нравится писать на асме под IDE(с некоторых пор). До этого - чистый асм.
0
Модератор
2131 / 1000 / 170
Регистрация: 23.07.2018
Сообщений: 3,349
Записей в блоге: 3
15.08.2020, 23:25  [ТС]
Сразу после старта RM не совсем Real : "база" CS не соответсвует его содержимому,что даёт дополнительный повод поразвлекаться разработчикам устройств на x86.
0
Asm/C++/Delphi/Py/PHP/VBA
 Аватар для Jin X
6808 / 2048 / 238
Регистрация: 14.12.2014
Сообщений: 4,297
Записей в блоге: 12
16.08.2020, 14:16
Ну это скорее просто такой нюанс. Чтобы был доступ к ПЗУ
0
28 / 20 / 0
Регистрация: 30.06.2020
Сообщений: 40
02.09.2020, 23:00
Цитата Сообщение от politoto Посмотреть сообщение
И что такого уж печального в музее?
Да, музей лучше чем свалка.

Просто, например когда видишь человека который, считает что может и хочет полноценно работать, у него есть силы и ясность ума, а его насильно на пенсию, это грустно. Тоже самое и в отношении архитектуры которую, со всеми её интересными плюсами и некоторыми неудобствами, активно использовал не один десяток лет... Такое ощущение что окончательно расстаёшься со старым верным другом. Но это уже лирика...

Тем-не менее даже в 2020-м имеется по крайней мере один пример применения архитектуры x86 16-bit Real Mode как и навыков низкоуровневого программирования для неё в серьёзной работе.


Цитата Сообщение от politoto Посмотреть сообщение
Не удивлюсь, если где-то все ещё трудятся системы на архитектуре PDP-11 или даже PDP-8.
Про данные архитектуры не знаю, мне про их альтернативное осовременивание что-либо сказать трудно. Хотя идея интересная. И очевидна простота аппаратной реализации данной архитектуры. Кстати «Микро Механические» и «Микро Гидродинамические» системы становятся всё меньше и меньше и технология их производства всё проще и проще, думаю на них вполне можно реализовать эффективно и надёжно PDP-подобную архитектуру.


Цитата Сообщение от politoto Посмотреть сообщение
Реальный режим это уже аппаратная эмуляция.
В случае когда фирма для своих нужд выделила площадь под «маленький свечной заводик» размером с небольшую кухоньку и производит для своих нужд не большое количество чипов по технологии 3 мкм об эмуляции речь разумеется не идёт.

Если относительно просто и не дорого без существенных затрат производственных площадей частная фирма для себя делает микрочипы, то мне кажется, что такая возможность со временем может сделаться доступной и широкому кругу населения. То есть будет дома стоять агрегат размером с холодильник или даже меньше и делать чипы с той архитектурой которая удобна интересна приятна владельцу данного агрегата.. В этом случае данная архитектура x86 16-bit Real Mode могла бы стать «народной архитектурой» в той или иной степени. Получит, альтернативное развитие, придумают альтернативные средства для работы в Интернет. Ну это, как говорится, поживём увидим.

А вот производители Персональных Компьютеров безусловно «выпиливают» постепенно x86 16-bit Real Mode архитектуру. Ну это уже на усмотрение производителей. По моему субъективному мнению, это немного грустный, но в какой-то степени нормальный процесс.

СОВСЕМ НЕ ПО ТЕМЕ.

А что действительно особенно не приятно часто не заслуженно негативно говорят о DOS и программировании связанном с данной операционной системой.

Вопрос применения в Образовании, который поднимался... Образование, в том числе и высшее, в странах СНГ как-бы это мягче сказать без использования не нормативной лексики... В очень не приятном положении на четвереньках... Пожилой преподаватель может знать много интересных вещей из области математики с которыми было-бы полезно ознакомиться его студентам, но дальше основ x86 16-bit Real Mode, дальше Turbo Pascall он не воспринимает программирование... Тогда у студентов рождается ложное чувство превосходства. И на выходе из заведения высшего образования может получиться «Митрофанушка» с повышенным чувством собственной важности. А потом преподаёт «Митрофанушка»... Плюс в «Митрофанушкино» время подключаются ещё и другие негативные стороны современных заведений высшего образования...

Что создаёт в итоге ложное негативное отношение к x86 16-bit Real Mode и Дисковым Операционным Системам. А они то тут не виноваты.

Добавлено через 21 минуту
Цитата Сообщение от Jin X Посмотреть сообщение
Причём, x86/MS-DOS – не самая распространённая платформа.
Популярны Спектрумы, Amiga, Commodore 64, Atari, встречаются также БК, NES (Dendy), Sega, Nintendo, MSX и т.д.
Кстати да... А то... И я в том числе x86 16-bit Real Mode - и больше ничего. Просто в 90-х зародилось и у меня в том числе ложное чувство что нет архитектуры кроме x86.
1
Модератор
2131 / 1000 / 170
Регистрация: 23.07.2018
Сообщений: 3,349
Записей в блоге: 3
03.09.2020, 06:08  [ТС]
Цитата Сообщение от ManFromPast Посмотреть сообщение
Цитата Сообщение от politoto Посмотреть сообщение
Реальный режим это уже аппаратная эмуляция.
В случае когда фирма для своих нужд выделила площадь под «маленький свечной заводик» размером с небольшую кухоньку и производит для своих нужд не большое количество чипов по технологии 3 мкм об эмуляции речь разумеется не идёт.
Если это клон 8086, а не, например x286, то он работает в 16-разрядном, но единственном программно досутпном режиме, а не в "реальном".
Цитата Сообщение от ManFromPast Посмотреть сообщение
Что создаёт в итоге ложное негативное отношение к x86 16-bit Real Mode и Дисковым Операционным Системам.

Не по теме:

То, что IBM называла DOS в 1960-е, до сих пор никто в музей сдавать не собирается:
https://www.ibm.com/support/pa... ?loc=ru-ru
https://www.ibm.com/products/zvse
Возможно, и предподаватель Turbo Pascal сам в своё время учился программировать подобную систему. В том числе на PASCAL/VS.



Добавлено через 10 минут
Цитата Сообщение от ManFromPast Посмотреть сообщение
Если относительно просто и не дорого без существенных затрат производственных площадей частная фирма для себя делает микрочипы, то мне кажется, что такая возможность со временем может сделаться доступной и широкому кругу населения. То есть будет дома стоять агрегат размером с холодильник или даже меньше и делать чипы с той архитектурой которая удобна интересна приятна владельцу данного агрегата.. В этом случае данная архитектура x86 16-bit Real Mode могла бы стать «народной архитектурой» в той или иной степени
Энтузиасты и сейчас не очень за дорого могут экспериментировать с различными архитектурами на домашнем FPGA.
0
3410 / 1829 / 489
Регистрация: 28.02.2015
Сообщений: 3,696
03.09.2020, 10:51
Цитата Сообщение от Jin X Посмотреть сообщение
proc3nt, у нас была тема про переименование подразделов. Но до конца так и не довели. Можно поднять и продолжить там. Найти только её надо.
Подразделы низкоуровневого
0
28 / 20 / 0
Регистрация: 30.06.2020
Сообщений: 40
04.09.2020, 00:37
Цитата Сообщение от politoto Посмотреть сообщение
Если это клон 8086, а не, например x286, то он работает в 16-разрядном, но единственном программно досутпном режиме, а не в "реальном".
И чем 16-разрядный режим 8088 или 8086 отличается от реального режима 80286? И там и там 20 разрядная шина:

адресс памяти = сегмент shl 4 + смещение

Отличие только в наличие дополнительных команд в реальном режиме у более поздних процессоров.

Но в целом в реальном режиме работа 8086 8088 80286 практически не отличается.

Просто в архитектуре 80286 появился новый защищённый режим для 24 разрядной шины.

А фраза до 80286-го все процессоры семейства x86 x88 работали в реальном режиме не имеет ни каких противоречий.

Добавлено через 50 минут
Хотя ещё есть одно отличие, начиная с 80286-го доступны 64 килобайта без 16 байт за пределами первого мегабайта.
DOS= HIGHT, UMB

Но суть "защищённый" "реальный" не в этом. А в способе адресации программы к памяти.

Добавлено через 21 минуту
В реальном режиме просто суммируются сегмент и смещение, адресс памяти = сегмент shl 4 + смещение.

А в защищённом адрес определяет процессор на основе селектора смещения и таблицы дескрипторов. Память "защищена" от не допустимых способов её использования.

Добавлено через 1 минуту
В реальном память используется как угодно. В этом и заключается сильная и одновременно слабая сторона реального режима.

Добавлено через 1 час 13 минут
Цитата Сообщение от politoto Посмотреть сообщение
Энтузиасты и сейчас не очень за дорого могут экспериментировать с различными архитектурами на домашнем FPGA.
Я не сспорю... FPGA так FPGA

Цитата Сообщение от ManFromPast Посмотреть сообщение
Правда острой необходимости в массовом применении такого подхода люди не ощущают. Хватает и чипов и микросхем и средств прошивки и контроллеров и.т.д. и.т.п., а так-же Голов и светлых идей рождающих ПО для всего этого букета электронных розЪ.

Я и не отрицал что не существует других подходов даже в первом своём сообщении. Как и существенной необходимости. Можно эмулировать, перепрограммировать, прошивать устройства для работы с той или иной архитектурой. Просто констатировал факт что другой подход эффективен, надёжен и поэтому дожил в плане серьёзной работы до настоящего времени.

В настоящее время о наличии такой возможности для населения у меня сведений нет, и я утверждаю что в настоящее время это скорее всего не доступно. Поэтому я просто выразил своё мнение, что доступность для обычного человека легко самостоятельно на некотором приобретённом удобном агрегате, изготавливать чипы на своё усмотрение это тоже интересная и востребованная возможность решать свои задачи, организовывать своё развлечение так-как тебе захочется иметь тот компьютер который хочется тебе, ну и 16-bit Real Mode x86 с моей точки зрения в рамках этого направления получит дальнейшее альтернативное развитие.

Обсуждение того как это будет практически уже выходит за рамки темы. Единственное почему я упомянул об этому, так потому, что по моему мнению такая возможность продолжит применение и развитие 16-bit Real Mode x86.

Но тут как говорится поживём увидим.

P.S. Сляпы казау пабачым

Добавлено через 31 минуту
НЕ ПО ТЕМЕ.

Цитата Сообщение от politoto Посмотреть сообщение
То, что IBM называла DOS в 1960-е, до сих пор никто в музей сдавать не собирается:
https://www.ibm.com/support/pa... ?loc=ru-ru
https://www.ibm.com/products/zvse
Возможно, и предподаватель Turbo Pascal сам в своё время учился программировать подобную систему. В том числе на PASCAL/VS.

Да это как раз в точку... О реальной исторической личности и просто хорошем человеке. Которого не заслуженно недолюбливали отдельные категории тех кого он вынужден был учить в силу исторических обстоятельств, пока окончательно не ушёл на пенсию. И я позволил себе использовать элементы реальной личности в образе иллюстрирующем непристойное положение на четвереньках пост.советского образования.
0
Модератор
2131 / 1000 / 170
Регистрация: 23.07.2018
Сообщений: 3,349
Записей в блоге: 3
04.09.2020, 05:24  [ТС]
Цитата Сообщение от ManFromPast Посмотреть сообщение
Но суть "защищённый" "реальный" не в этом. А в способе адресации программы к памяти.

В реальном режиме просто суммируются сегмент и смещение, адресс памяти = сегмент shl 4 + смещение.
А в защищённом адрес определяет процессор на основе селектора смещения и таблицы дескрипторов. Память "защищена" от не допустимых способов её использования.
Все 24 разряда ( и 32 в следующих 32-разрядных представителях семейства ) адресной шины задействованы от старта до отключения питания.
Адрес, который выставляется на эту шину, всегда получается просто суммированием смещения и базового 24-разрядного адреса используемого сегмента.
Документированный способ программного изменения этого адреса - инструкции, изменяющие содержимое соответствующего 16-разрядного сегментного (или селекторного?) регистра: INT, межсегментные CALL, JMP, RET.
При этом в Real Address Mode и в [bjProtected Mode[/b] базовый адрес устанавливается так, как Вы описали:
сдвигом на 4 бита влево в реальном режиме и копированием из дескрипторной таблицы в "защищённом" режиме.
Диагностическими менее документированными инструкциями можно в "теневые" базовые регистры можно поместить нужное 24-разрядное значение в любом режиме работы 80286 независимо от 16-разрядных регистров сегмента/селектора. Внешними сигналами на отладочных стендах, скорее всего, тоже это можно сделать.
И MS-DOS эти отличия Real Address Mode от режима работы 8088/86/186/188 использовала, не переключая процессор в защищённый режим.
0
28 / 20 / 0
Регистрация: 30.06.2020
Сообщений: 40
28.09.2020, 01:00
Цитата Сообщение от politoto Посмотреть сообщение
И MS-DOS эти отличия Real Address Mode от режима работы 8088/86/186/188 использовала, не переключая процессор в защищённый режим.
Для этого использовалась команда LOADALL, имеющая код 0F 05 и применяемая в драйвере himem.sys Windows 286 и EMM286. К ней и сводится использование памяти выше первого мегабайта программами без перехода в защищённый режим 286-го. Ей можно пользоваться и самостоятельно заполняя буфер (по адресу 0000:0800) и осуществлять обмен данными с областью выше первого мегабайта. Но команда не документирована, поэтому её поддержка, код, функции в более поздних 80x86 процессорах не гарантировалась изначально.

Вообще очевидно... Если на компьютере есть память выше первого мегабайта, то почему должны отсутствовать способы её использования в Реальном Режиме 80286-го. Тем более что практически у всех на 286-м в своё время использовался старый добрый DOS.


На 32-х разрядных процессорах используются три известных мне способа доступа к памяти выше первого мегабайта совместно с работой под DOS.

Первый, это самый очевидный, работать в реальном режиме, а для обмена данными с дополнительной памятью временно переходить в защищённый режим, запрещая прерывания, загружая таблицу дескрипторов и устанавливая нулевой бит (флаг PE) регистра CR0. А потом вновь устанавливать 64КБ селекторы и возвращаться в реальный режим обнуляя бит 0 регистра CR0. Этот способ очень часто рассматривается в книжках им пользовался и я. При его реализации используются только хорошо документированные возможности процессора. Этот способ, используется windows 386 которая работает в реальном режиме и использует защищённый режим для обмена данными между памятью выше первого мегабайта и памятью первого мегабайта. В реализации доступа к памяти выше первого мегабайта и заключается основное отличие между Windows 386 и Windows 286.

Второй способ - это перейти в защищённый режим и работать в частности с теми же функциями DOS и BIOS через V86 на сколько я знаю это используют расширители DOS, но я такое сам не программировал и могу только пересказывать информацию от других лиц и литературы.

Ну и третий самый интересный, это Не реальный режим. Режим работы со сброшенным нулевым битом регистра CR0 (флаг PE) и установленным битом гранулярности (G). Этот режим в частности реализуется при возвращении в реальный режим без замены 4 ГБ селекторов используемых в защищённом режиме 64 КБ селекторами реального режима. Чаще всего переход в нереальный режим и описывается данным способом в литературе. С ним я экспериментировал в рамках книжных примеров.

Кстати ту же работу с LOADALL 286-го тоже можно назвать "нереальным режимом" 286-го...

Ну в принципе по любому поводу можно иметь своё, иногда обоснованное, иное мнение. А любую работу с изменённой "скрытой частью" сегментного регистра с целью расширения возможностей в плане доступа к памяти в реальном режиме можно смело отнести в UnReal Mode. И более-менее строго разделить рассматриваемые вопросы на Реальный, Защищённый и Не Реальный режим. Но поскольку находясь преимущественно в реальном режиме полезно использовать и память выше первого мегабайта, то в одной из тем данного раздела можно было бы затронуть и вопрос о различных нестандартных способах использования памяти выше первого мегабайта для случая преимущественной работы в реальном режиме. Ну это уже на ваше усмотрение, лично мне в этом вопросе кроме достаточно известных вещей скорее всего рассмотренных в других разделах форума добавить нечего.



Моё сугубо личное мнение - есть внешняя архитектура реального режима как набор достаточно простых и понятных команд процессора и то как мы эту архитектуру реализуем, это уже можно назвать по разному внутренняя архитектура, аппаратная эмуляция и т.д. и т.п. в зависимости от ситуации. Для корректного исполнения программы главную роль всё же играет строгое соответствие внешней архитектуры определённым правилам и удовлетворительная скорость выполнения команд, а не то каким путём это достигается.

Под клоном... Я всё же понимаю ситуацию когда для создания аналога используют ту же либо очень-очень похожую с оригиналом схему чипа, аналогичное его устройство. Как правило это делается по лицензии создателей оригинального чипа.

В случае о котором я писал ранее речь идёт о 100% compatible но со своей простой реализацией ни как не связанной с оригиналом. Поэтому в данном случае это не клон а аналог. Аналог позволяющий так-же в качестве дополнительных возможностей не связанных и не совместимых с оригиналам использовать простой, прямой способ использования дополнительной памяти без всяких защищённых режимов. Иногда это более удобно. И разумеется это гораздо легче и проще реализовать аппаратно.

А основные используемых возможности внешней архитектуры тех устройств о которых я говорил и реального режима обычного процессора идентичны.


Удобная или скорее привычная архитектура, это хорошо... Но... Дело скорее в другом что дальше с ней делать в 2020-м году? Кроме каких-то узких задач которые удобно и надёжно решаются есть ещё большой внешний мир включающий: форматы файлов, взаимодействие с внешними устройствами сторонних производителей, ну и работа во враждебном интернете,"на чужом поле"
Куда же без него...

Вот от этих вопросов будет немного грустно...
2
Модератор
2131 / 1000 / 170
Регистрация: 23.07.2018
Сообщений: 3,349
Записей в блоге: 3
28.09.2020, 13:32  [ТС]
Реальный режим подразумевает возможность нереального.
0
28 / 20 / 0
Регистрация: 30.06.2020
Сообщений: 40
28.09.2020, 18:29
Короче говоря, вопросы использования Не Реального Режима и возможно другие менее документированные способы получения памяти выше первого мегабайта, как и хорошо документированные методы связанные со временным переходом в защищённый режим и применения V86, чаще используемые при работе в DOS, решили отнести преимущественно к данному разделу на данном форуме и удалили отдельные разделы? Просто я давно не заходил. Раньше, достаточно давно, я так мельком просмотрел, были отдельно DOS Protected и UnReal. А теперь несколько иначе.

Добавлено через 13 минут
Цитата Сообщение от politoto Посмотреть сообщение
Реальный режим подразумевает возможность нереального.
???

И всё же, истинно реальным и удобным режим бы был, если-бы был простой, быстрый, хорошо документированный и понятный доступ к памяти выше первого мегабайта без всяких селекторов, обходных манёвров, хитрых команд. А так имеем то что имеем. В результате особенностей, возможно недочётов, изменённую скрытую часть селекторов можно получить не только в защищённом режиме, это приносит определённую пользу...

Добавлено через 14 минут
P.S. Реальный режим адресации к памяти подразумевает лишь наличие защищённого...
1
3410 / 1829 / 489
Регистрация: 28.02.2015
Сообщений: 3,696
28.09.2020, 18:33
Цитата Сообщение от ManFromPast Посмотреть сообщение
Не Реального Режима
Кулаков В. - Программирование на аппаратном уровне специальный справочник - описывал этот режим - прыг в protect, прыг в real := CS, DS, ES, SS => real, FS, GS => protect.
1
Модератор
2131 / 1000 / 170
Регистрация: 23.07.2018
Сообщений: 3,349
Записей в блоге: 3
28.09.2020, 22:49  [ТС]
Цитата Сообщение от ManFromPast Посмотреть сообщение
вопросы использования Не Реального Режима и возможно другие менее документированные способы получения памяти выше первого мегабайта, как и хорошо документированные методы связанные со временным переходом в защищённый режим и применения V86, чаще используемые при работе в DOS, решили отнести преимущественно к данному разделу на данном форуме и удалили отдельные разделы? Просто я давно не заходил. Раньше, достаточно давно, я так мельком просмотрел, были отдельно DOS Protected и UnReal. А теперь несколько иначе.
Long Mode ( c 32-разрядным подрежимом ) стал теперь фактически основным для x86 на главных вариантах Windows и linux
http://www.cyberforum.ru/low-l... 45070.html
А в нём нет V86 и, тем более, Unreal.
После удаления NTVDM из Windows основным средством запуска студенческих 16-разрядных работ стали dosbox, emu8086 и подобные симуляторы. Со своими особенностями.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.09.2020, 22:49
Помогаю со студенческими работами здесь

Нельзя преобразовать тип function(x real) real к real
program Simpson; var x,a,b,h,s:real; n:integer; function Y(t:real):real; begin Y:=(exp(x*ln(exp)))/(x+5); end;

Операция '*' не применима к типам real и function(x: real): real
function Arccos1(x: integer): real; begin arccos1 := sqr(Arccos(x)) + arccos(x-(1/2)); end; function arccos2(x:integer):...

Нельзя преобразовать тип function(x: real): real к real
Здравствуйте! Не могу написать формулу. Ошибка:Нельзя преобразовать тип function(x: real): real к real program zadacha; var...

Нельзя преобразовать тип function(x: real): real к real
var g,s,s1,s2,fi,h:real; label k; begin write('Vvedite visotu'); readln(h);k: write('Vvedite gradusi'); readln(s); ...

Given real numbers a, b, c. Find if a quadratic inequality ах2 + bx + с = 0 has real roots. If it does, output them
ВОТ задача помогите решить Given real numbers a, b, c, where a is not 0. Find if a quadratic inequality ах2 + bx + с = 0 has real...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru