Отправляет email-рассылки с помощью сервиса Sendsay

Задачи по ассемблеру

  Все выпуски  

Задачи по ассемблеру


Информационный Канал Subscribe.Ru


Задачи по ассемблеру.


Выпуск #21.

Добрый день, уважаемые подписчики! В скором времени мы перейдем на новый адрес (.COM.RU). Присылайте варианты названия нового сайта! И еще. Здесь опубликованы не все пришедшие решения - они попадут в следующий выпуск.

Сегодня в выпуске:

1. Решение задачи #20.

2. Задача #21.

3. Команда для COMPO: HUGI COMPO 21

Решение задачи #20.

Таблица рекордов:

  Участник

Размер решения

1. Shur

15 байт

2. G3

15 байт

3. Alexey_1

16 байт

4. Odin

19 байт

Условие задачи.

Сравнить число в типе "Знаковый байт".

Решения.

Решение by Shur, G3:

;by Shur
        ;15 bytes
        ;tasm, tlink /t
        .model tiny
        .code

 org 100h

start:
 mov al,-15
 cmp al,0
 mov al,'<'
 jl _less
 je _zero
 inc ax
_zero:
 inc ax
_less:
 int 29h
 ret
        end start

Решение by Alexey_1:

;tasm /m2 task20.asm
;tlink /t task20
;16 байт
;by Alex

CSEG segment
assume cs:CSEG, ds:CSEG, ss:CSEG, es:CSEG
org 100h
 .386
main:
mov al,-15;   инициализирую al
mov dl,'<'

xchg ax,dx
cmp dl,bl;    <=>cmp dl,0 т.к при загрузке bl=0
jl quit
je eq

inc ax;       '<' + 1 = '='
eq:
inc ax;       '=' + 1 = '>'

quit:
int 29h;      вывожу символ
ret;          выход
CSEG ends
end main

 

Решение by Odin:

; task20 19 bytes
; fasm task20.asm task20.com
; Odin
        org     100h
        mov     al, -15
        cmp     al, 0
        mov     al, '<'
        jl      out1
        jg      big
equal:
        inc     al
        jmp     out1
big:
        add     al, 2
out1:
        int     29h
        ret

 

У кого есть более короткое решение присылайте указав в теме номер задачи.

Задача #21.

Размер моего решения:  27 байт.

Задание:

Считать с клавиатуры строку цифр (с выводом на экран считанных символов). Занести в BX сумму всех цифр, введенного числа.

Обратите внимание на то, что:

- введенная строка будет состоять целиком только из цифр, т.е. проверять чем является символ в строке не надо.

- считывать нужно целой строкой, а не посимвольно.

- максимальная длина строки 255 символов.

Отправить решение до 27.02.2003

Команда для COMPO.

Hugi предлагает для решения COMPO 21. Те кто, хочет решать его в команде напишите письмо мне, для включения в команду. Написать нужно даже тем, кто включен в нее - для проверки. Только учтите, что решения будут посылаться от команды, а не от одного человека!!!

В заключение...

На главной странице сайта http://www.igoryksoft.narod.ru/ будут даны размеры программ лидеров, как только таковые появятся. И так будет с каждой задачей. Узнав, эту информацию каждый может прислать более оптимизированное решение.

Любые предложения по улучшению рассылки, Ваши задачи, вопросы прошу присылать мне на почту, указанную внизу рассылки. 

(с) IgorykSoft Все права защищены! 
URL: http://www.igoryksoft.narod.ru/  E-Mail: Igoryk@FromRu.Com


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное