Просмотр полной версии : Две задачи в Turbo Pascal и Assembler (listing)
Нужен Listing.1-я в Turbo. Составить программу выполняющую вычисление по формуле
z=2x3+y2+5 (x - в третьей y- во второй)значения аргументов вводить с клавиатуры
резулаты вывести на экран
2-я. Задание Задание Составить программу на Ассемблере, выполняющую вычисления по формуле(z=)
(1 строка) X2, X>=0;
Z=
(2 строка) X3, X<0;
значение аргумента х(одноразрядное шестнадцатеричное число) вводить с с клавиатуры, результат поместить в регистр DX.
(В пред просмотре виды формулы искажаються)
Буду признателен за помощь
program formula;
BEGIN
var z, x, y : real;
Write ('Введите x: ');
ReadLn (x);
Write ('Введите y: ');
ReadLn (y);
z := 2*x*x*x + y*y + 5;
WriteLn ('x = ', x, '; y = ', y);
WriteLn ('z = 2*x^3 + y^2 + 5 = ', z);
{Здесь может какую-нибудь задержку нужно поставить}
END.
{если не правильно, извиняюсь, давно на Pascal'е уже не писал...:)}
program formula;
{Здесь может какую-нибудь задержку нужно поставить}
Например, ReadLn();
По поводу Асма.
Х2 и Х3 - это константы?
Откуда знак у одноразрядного шестнадцатиричного числа?
По поводу Асма.
Х2 и Х3 - это константы?
Откуда знак у одноразрядного шестнадцатиричного числа?
посмотри вложение там в нормальном виде задание
The_naked,Trotil Большое Спасибо!!
;На Tasm давно не писал, но всё же
.model tiny
.code
.586
org 100h
start:
;выводим пириветсвие
mov dx, offset message1
mov ah,9
int 21h
; считываем число
mov dx, offset buffer
mov ah, 0Ah
int 21h
;переводим число
xor si,si
mov al, byte ptr bufdata[si]
cmp al,'-'
JE NEGATIVE
inc si
mov al, byte ptr bufdata[si]
Call Conver
Jmp Skip
Negative:
Call Conver
Neg AL
Skip:
Xor AH, AH
Cmp AL, 0
JGE X2
Mov CL, AL
Mul CL
Mul CL
Jmp Exit
X2: Mul AL
Exit:
Mov DX, AX
Ret
message1 db 'Введите однозначное десятисное число $'
erro1 db 'Введённая информация не корректна'
buffer db 2
buflen db ?
bufdata dw
;Переводит символ шестнадцатиричный в AL
Conver:
Sub AL,'0'
JB ERROR
Cmp AL, 9
JNA ConverExit
Sub AL, 'A'-'0'
JB ERROR
Cmp AL, 'F'-'A'
JNA ConverExit1
Sub AL, 'a'-'A'
JB ERROR
Cmp AL, 'f'-'a'
JA Error
ConverExit:
Ret
ConverExit1:
Add AL,10
Ret
Error:
mov dx, offset error1
mov ah,9
int 21h
Ret
Ret
Willow,The_naked,Trotil!!!
Всем спасибо!выручили))
vBulletin® v3.8.5, Copyright ©2000-2024, Jelsoft Enterprises Ltd.