![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
blackhard |
![]()
Сообщение
#1
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 151 Пол: Мужской Реальное имя: иван Репутация: ![]() ![]() ![]() |
помогите сделать задание
![]() Система команд-арифметические операции над содержимым регистров ввод и вывод значений регистров,условный и безусловный переход к команде заданного номера.длинна команды 3 байта включает в себя код операции (6бит) и номер 3х регистров (по 6 бит),в первых 2Х содержаться операнды, в 3й заносится результат операции. дать описание системы команд и программу для вычисления суммы квадратов первых n натуральных чисел.препод вообще ниче не обьяснил по этой теме и я блин даже не представляю как это сделать в паскале.мнеб хотяб понять как это делать ![]() |
![]() ![]() |
blackhard |
![]()
Сообщение
#2
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 151 Пол: Мужской Реальное имя: иван Репутация: ![]() ![]() ![]() |
уф я понял как написать прогу
![]() ![]() |
Malice |
![]()
Сообщение
#3
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 705 Пол: Мужской Репутация: ![]() ![]() ![]() |
длинна команды 3 байта включает в себя код операции (6бит) и номер 3х регистров (по 6 бит),[/color] Преобразовать команды и номера регистров в 3 байта можно примерно так: b1:=(c shl 2) or (r1 shr 4);и обратно: c:=b1 shr 2; Если не напутал нигде ![]() |
blackhard |
![]()
Сообщение
#4
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 151 Пол: Мужской Реальное имя: иван Репутация: ![]() ![]() ![]() |
Преобразовать команды и номера регистров в 3 байта можно примерно так: b1:=(c shl 2) or (r1 shr 4);и обратно: c:=b1 shr 2; Если не напутал нигде ![]() а можно небольшой комментарий я не знаком с операциями shl shr |
Malice |
![]()
Сообщение
#5
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 705 Пол: Мужской Репутация: ![]() ![]() ![]() |
а можно небольшой комментарий я не знаком с операциями shl shr Shr - битовый сдвиг вправо, аналогичен делению на 2 на каждый бит. Shl - влево - умножение на 2. пусть у тебя 4 6-ти битовых числа, в 3-х байтах они выглядят так: 11111122 22223333 33444444 чтобы получить первый байт, нужно сдвинуть на 2 бита влево первое число (c shl 2) и сложить с 2-мя старшими от второго (r1 shr 4). Аналогично для 2-х следующих байт. Почитай про битовые операции, это просто ;) Сообщение отредактировано: Malice - 26.11.2007 22:01 |
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 17:24 |