Перевод строки в число типа longint (раздельная компиляция Turbo Pascal и TASM) - Assembler/TASM
Формулировка задачи:
Составить внешнюю подпрограмму для варианта задания, соответствующего порядковому номеру студента в списке группы. Подпрограмму оформить в отдельном модуле. Для проведения отладки подпрограммы необходимо так же составить две основные программы: на языке ассемблера и на языке высокого уровня, вызывающие составленную подпрограмму как внешнюю.
function Str2Long(S: string; var L: longint): boolean.
Переводит символьное представление числа S в длинное целое L. Возвращает true, если формат числа в S правильный (например, не содержится недопустимых символов), иначе - false.
Помогите, пожалуйста, кто может, вообще не понимаю ассемблер, да и преподаватель толком ничего не объясняет
Решение задачи: «Перевод строки в число типа longint (раздельная компиляция Turbo Pascal и TASM)»
textual
Листинг программы
program test; function Str2Long(var S: string; var L: longint): boolean; far; external; {$L Str2Long.OBJ} var S: string; L: longint; begin writeln('String: '); readln(S); if Str2Long(S, L) then writeln('Longint: ', L) else writeln('Error'); end.
Объяснение кода листинга программы
- Объявлены две переменные: S типа string и L типа longint
- Выводится сообщение
String:
и считывается строка с помощью функции readln - Вызывается функция Str2Long, которая принимает два аргумента: S и L. S - адрес строки, L - адрес переменной longint
- Если функция Str2Long вернула значение true, то выводится сообщение
Longint:
и значение переменной L - Если функция Str2Long вернула значение false, то выводится сообщение
Error
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д