Да, не запускается с ошибкой “AMD-V is disabled in the BIOS (or by the host OS) (VERR_SVM_DISABLED).” Программа SecurAble пишет “Hardware Virtualization - Yes”. Принесу ноутбук тогда на практику
Сегодня, на лекции я обещала дать ссылку на научно-популярные материалы по тому, как была устроена немецкая шифровальная машина Энигма. Вот - часть первая с русскими субтитрами. Поскольку эта часть стала невероятно популярной (более 3 млн. просмотров), сотрудники Кембриджского университета опубликовали вторую часть фильма. Она пересекается с первой, но содержит и новые материалы, в частности, о том, как был “взломан” код Энигмы. Русских субтитров во второй части нет, так что есть повод “подтянуть” английский. А заодно полезно будет посмотреть упомянутый художественный фильм “Игра в имитацию” (трейлер)
Второй добор для студентов бывшего 2-го курса направления ПМИ по части «Архитектура компьютера» дисциплины “Архитектура компьютера и парадигмы программирования” будет проходить 14-ого сентября 2018 года, в пятницу, с 8:00 до 9:45, в компьютерном классе 118 в здании мехмата. На добор могут прийти те, кто набрал 31 балл и больше. У них есть шанс получить зачет (60 баллов). Те, кто в семестре набрал меньше 31-го балла, если строго следовать Положению о БРС, должны повторно послушать курс. На любой из процедур добора можно будет написать 1 контрольную работу по теории (лекции двух модулей вместе). В качестве вопросов будут также задания по темам, относящимся к лабораторным занятия. Максимальная оценка за контрольную - 29 баллов. Время ограничено - не более 100 мин и не позднее 9:45 14-го сентября. В связи с ограничением времени задачи на сложные, продолжительные по времени, вычисления из теста будут удалены.
Ответ на вопрос, возникший на сегодняшней лекции, есть в файле, фрагмент которого был приведён на слайде. Число в круглых скобках в таблице CORE INSTRUCTION SET - это сноска, расшифровка сносок приведена ниже, над таблицей BASIC INSTRUCTION FORMATS. Как я и говорила на лекции у всех регистровых инструкций OPCODE равен 0 и собственно выполняемое действие описывается полем FUNCT. У I и J инструкций выполняемое действие определяется через OPCODE. Он и приведён в таблице CORE INSTRUCTION SET. Если вам не нравится английский вариант таблицы, то русский её аналог смотрите в Приложении B в книге “Цифровая схемотехника и архитектура компьютера”
При работе с файлами возникает следующая проблема: при записи содержимое не отображается в ожидаемом виде. Буквально пишу банальный код и получаю это! PUSH 2 PUSH buf PUSH CX PUSH _WRITE … даже обидно как-то.
А пришлите-ка мне полный текст Вашей программы.
Код
PUSH 2
PUSH buf
PUSH CX
PUSH _WRITE
SYS
означает: запиши два байта взятых по адресу buf
в файл. По адресу buf
у вас лежит слово 2, что в байтах выглядит как 20
(little-endian). Соответственно, в файл попадает 20
. Что же тут неожиданного…
@Ulysses, спасибо. Думаю @yuri это помогло на сегодняшнем лабораторном занятии. Никак не могу привыкнуть, что студенты готовятся к занятиям по ночам
Все, разобрался! Думал, что такое представление связано с ошибкой записи. Ожидал получить что -то типа:
А использовать $ hexdump для проверки - подумал что это для слабаков. Спасибо, огромное))
Для текстовой двоечки нужно, чтобы buf
содержал строковые данные (buf: .ASCIZ "2"
)… ну и достаточно скопировать всего один байт (PUSH 1
вместо PUSH 2
).
Для выполнения лабораторной работы по микропрограммированию нужен образ виртуальной машины с Java-машиной. Я подготовила Вам такой образ и добавила раздел с описанием того, как его установить. Читайте “Образ виртуальной машины с Java”
Такой вопрос, как добавить символ новой строки в строковую переменную? Нашел кучу ответов на stackoverflow, но ни один из них не работает. https://stackoverflow.com/questions/9402961/adding-newline-characters-to-unix-shell-variables
Может это особенность нашей версии Lubuntu
Пример: cценарий, удаляющий пустые строки из указанного файла.
script.sh (230 Байты)
Заранее благодарю за ответ.
@yuri, действительно, прочитала об отличиях версий bash. В частности, они относятся и к строкам. В Вашем скрипте я чуточку подправила текст. В моей версии bash так всё работает. script.sh (258 Байты)
Работает
Почти потерял надежду, думал, что через конвейеры нужно делать. Надо символ $"\n" в рамку поставить. Спасибо.