|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
24.10.2012, 16:50 | #1 |
Пользователь
Регистрация: 22.10.2012
Сообщений: 44
|
Тупые вопросы новичка
Имеется код, который просто выводит на экран классическое "Привет мир":
PHP код:
|
24.10.2012, 17:02 | #2 |
equ asm
Участник клуба
Регистрация: 02.05.2009
Сообщений: 1,605
|
На каком асме вы писали, что в нем меток нету ? О_О
Код:
|
24.10.2012, 17:04 | #3 | |
Пользователь
Регистрация: 22.10.2012
Сообщений: 44
|
Я писал на той асме где может быть только слово Begin и никакое более!
Цитата:
Последний раз редактировалось Димас5552; 24.10.2012 в 17:07. |
|
24.10.2012, 17:10 | #4 |
equ asm
Участник клуба
Регистрация: 02.05.2009
Сообщений: 1,605
|
Как можно писать программу даже без переходов и прочего ?
Скажите что за контроллер такой - я полюбопытствую ) |
24.10.2012, 17:17 | #5 |
Пользователь
Регистрация: 22.10.2012
Сообщений: 44
|
Это среда написания прошивок называется MPLAB, разработчик - Microchip. Там в принципе сильно сложные алгоритмы то и не нужны - 2+2 хватает позаглаза
Ещё у меня вопрос по регистрам - их ведь у процессора ограниченное количество... Вот начинаем мы выполнять программу, заносим в регистр нужное значение но ведь получается что какая ни буду другая программа, выполняемая параллельно может этот регистр под себя изменить... Почему этого не происходит? |
24.10.2012, 17:26 | #6 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,357
|
Потому что процессор паралельно не работает - параллелизм делает другая програма, которая заботися о сохранении регистров.
|
24.10.2012, 17:33 | #7 |
Пользователь
Регистрация: 22.10.2012
Сообщений: 44
|
И как эта программа называется? Но ведь если она постоянно заботится о том что бы регистры не путались выходит она сама постоянно работает и пользуется регистрами а значит процессор больше ничего не может выполнить кроме этой одной программы...
Последний раз редактировалось Димас5552; 24.10.2012 в 17:42. |
25.10.2012, 03:57 | #8 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
Димас5552
эта программа называется "многозадачная операционная система" в твоем случае Виндовз, именно она распределяет память так чтобы каждая задача считала, что она единственная и ОС занимается сохранением содержания регистров при переключении между заданиями, а процессор выполняет, то что ему подсовывает ОС |
28.10.2012, 19:44 | #9 |
Пользователь
Регистрация: 22.10.2012
Сообщений: 44
|
Читал книжку калашникова и там говорится что прога грузится в первый же свободный сигмент оперативки. Этому сигменту присваивается имя командой sigment, например "CSIG sigment". Я так понимаю в одном сигменте оперативки находится 64 кб, так как максимальный размер проги в com именно столько...?
И что значит команда CSEG ends? Конец сигмента, но зачем? Ведь если в этот сигмент загрузилось например 10 кб кода и в конце идет это команда она же никак не может "обрезать" физическое пространство сигмента до 10 кб...? |
28.10.2012, 20:30 | #10 |
equ asm
Участник клуба
Регистрация: 02.05.2009
Сообщений: 1,605
|
Во-первых есть еще exe программы, а в них может быть и почти всегда более одного сегмента. Как отличить конец одного и начало другого ?
Во-вторых понятнее использовать упрощенные дерективы сегментации. В вашем случае, это Код:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Почему на этом форуме все игнорируют тупые вопросы? | IRobot | Свободное общение | 45 | 02.07.2011 13:43 |
Вопросы от новичка | AngelOfFate | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 1 | 03.06.2011 15:25 |
Вопросы от новичка | valenina | Общие вопросы Delphi | 10 | 31.05.2010 09:35 |
Вопросы новичка(C++) | NetGod | Общие вопросы C/C++ | 22 | 17.04.2009 22:49 |