копирующей содержимое области ОЗУ в файл, и
BLOAD filespec$[,offset%] (9.28),
загружающей информацию из файла, созданного командой BSAVE, в ОЗУ.
Здесь
filespec$ — спецификация файла, в который производится побайтное
копирование содержимого ОЗУ для BSAVE, или из которого производится
копирование для BLOAD.
offset% — смещение начального адреса сохраняемой области памяти для BSAVE, или загружаемой области памяти для BLOAD.
lengths — количество копируемых байтов (от о до 65535), начальный адрес области памяти определяется смещением и значением сегмента, установленным последней команды DEF SEG.
Эти процедуры самостоятельно открывают файл, производят запись в файл или чтение из файла соответственно, а затем закрывают файл. Перед обращением к любой из этих процедур необходимо установить значение сегмента, определяющего адрес в ОЗУ, а после — восстановить значение текущего сегмента. Для записи в файл необходимо указать количество записываемых байтов, читаются же все записанные в файл байты.
РАБОТА С ПОСЛЕДОВАТЕЛЬНЫМИ ПОРТАМИ
В принципе возможена обмен информацией с клавиатурой, принтером и дисплеем как с файловыми устройствами, потому что эти устройства открываются операционной системой как файлы. Но гораздо удобнее (и по оформлению и по скорости работы программы) использовать команды, описанные в разделах относящихся к соответствующим устройствам. Но команд для работы с последовательными портами в языке QBasic нет. Поэтому для работы с устройством ввода/вывода, использующим связь через последовательный порт по протоколу обмена RS232, необходимо открыть это устройство как файл командой
OPEN "COMn: optlisti optlist2" [FOR mode] AS [#]filenum% [LEN=reclen%] (9.29)
Где: п — номер открываемого последовательного порта (1 — СОМ1, 2 — COM2); optlisti — список наиболее часто используемые при связи параметров:
[baud] [,[parity] [,[data] [,[stop]]]]
• baud — скорость обмена с открываемым устройством в бодах:75, 110,150,300,600,1200,2400,4800,9600;
• parity — метод проверки четности: N (нет), Е (чет), О (нечет), S (пробел), М (метка), РЕ (включить проверку четности);
• data — количество битов данных в байте: 5, 6, 7, 8;
• stop — количество стоповых битов: 1, 1.5, 2;