|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
13.12.2012, 11:55 | #1 |
Форумчанин
Регистрация: 13.12.2012
Сообщений: 116
|
Free Pascal. Низкоуровневое управление байтовыми множествами.
Здравствуйте) Помогите пожалуйста вникнуть в лабораторную. Язык FREE PASCAL. Подскажите как написать функцию, остальные сделаю сама.
Низкоуровневое управление множествами. Разработать функции для низкоуровневого управления байтовыми множествами, реализующие операции in, +, -, * и фунции include, exclude средствами прямого доступа к оперативной памяти множества. { тип множества } type ByteSet=set of byte; { аналог операции in } function inSet(e:byte; bset:ByteSet):boolean; { аналог операции + } function addSet(b1set,b2set:ByteSet):ByteSet ; { аналог операции - } function subSet(b1set,b2set:ByteSet):ByteSet ; { аналог операции * } function mulSet(b1set,b2set:ByteSet):ByteSet ; { аналог функции include } function includeSet(e:byte; bset:ByteSet):ByteSet; { аналог функции exclude } function excludeSet(e:byte; bset:ByteSet):ByteSet; Одну любую. Или просто идею решения. Если кто может, можно и несколько функций))) ПОДЧЕРКИВАЮ: средствами прямого доступа к оперативной памяти множества. За любую помощь очень благодарна!!! |
13.12.2012, 14:40 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Это кто же такие задания даёт?! Это же жуть и кошмар!
и главное - ЗАЧЕМ?! Я, например, только предполагать могу, каким образом хранится множество байт в памяти (без этого доступ к памяти организовывать бессмыслено)... |
13.12.2012, 14:56 | #3 |
Форумчанин
Регистрация: 13.12.2012
Сообщений: 116
|
В универе( на втором курсе. Предмет называется: структуры данных и алгоритмы...
|
13.12.2012, 15:22 | #4 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
сочувствую. я лично - пас...
попробуйте найти методичку с примером решения аналогичной задачи и/или решения подобных задач (у сокурсников, прошлогодние решения, у преподавателя образец или направление, куда двигаться). в любом случае, я лично подобное задание НЕ ОДОБРЯЮ! Это как плац ломом подметать - и затраты такие же, и результат, примерно, такой же... |
13.12.2012, 16:15 | #5 |
Форумчанин
Регистрация: 13.12.2012
Сообщений: 116
|
Спасибо за сочувствие) тоже поддержка)
П.С. есть один хороший человек, которого я уже замучила с такими вопросами).. А сам препод делает вид, что это элементарно!) |
13.12.2012, 16:50 | #6 |
Старожил
Регистрация: 08.02.2012
Сообщений: 2,173
|
На 100% не подскажу, но более чем уверен, что набор (set of) имеет такую же структуру как и массив. Т.е. можно попробовать написать функции на ассемблере (не уверен что free paskal с ним дружит) или посредством указателей получать доступ к значениям байтов. Сами же функции по своей реализации действительно элементарные.
Правильно поставленная задача - три четверти решения.
|
13.12.2012, 17:40 | #7 |
Форумчанин
Регистрация: 13.12.2012
Сообщений: 116
|
надо посредством указателей..но как
|
13.12.2012, 17:52 | #8 | |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,322
|
Цитата:
Update 18:30 Работает в лазарусе: Код:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
Последний раз редактировалось BDA; 13.12.2012 в 18:37. |
|
13.12.2012, 18:01 | #9 |
Форумчанин
Регистрация: 13.12.2012
Сообщений: 116
|
оооо спасибо большое) только у меня вот эта строка не компилируется b := @bset + e div 8; (16) Warning: Arithmetic "+" on untyped pointer is unportable to {$T+}, suggest typecast. Делаю в Geany под Windows7
но работает)) Последний раз редактировалось Решетова Алена; 13.12.2012 в 19:00. |
13.12.2012, 18:50 | #10 |
Форумчанин
Регистрация: 13.12.2012
Сообщений: 116
|
может и не то.. препода не понять.. но все равно хоть что-то))) спасибо огромное)))
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
free pascal | Риналь | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 05.04.2012 14:55 |
Free Pascal | Waqq | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 30.12.2011 18:47 |
Turbo Pascal и Free Pascal , в чем разница? | antoxann | Паскаль, Turbo Pascal, PascalABC.NET | 31 | 09.11.2011 07:52 |
а free pascal не читает задачи которые написаны на turbo pascal? | demonara | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 25.05.2009 16:28 |
Модуль для работы с множествами [Pascal] | iFool | Помощь студентам | 2 | 20.10.2008 22:04 |