Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
Assembler Среднее арифметическое элементов в массиве чисел (двойных слов) От всей души прошу вас парни! выручайте пожалуйста!! в программировании не очень понимаю. а до Гос экзамена осталось всего 20 дней!!! надо успеть сдать все долги((( дали решить и объяснить "очень" понятно билет: "разработать приложение на языке ассемблера, которое используя подпрограмму находит среднее арифметическое элементов в массиве чисел (двойных слов). Адрес первого элемента массива и... https://www.cyberforum.ru/ asm-beginners/ thread202558.html Assembler Массив. Index of min
.model small .stack 256 .data mas db 10 dup (0) i dw 0 .code main: mov ax,@data mov ds,ax
Assembler Перевод числа в массив символов Помогите пожалуйста сделать несколько лаб по ассемблеру, вот например такое задание: Разработать алгоритм т написать программу перевода 2-байтового целого числа в массив символов, который представляет запись числа в шестнадцатеричной системе(4 знака) Розробити алгоритм і написати програму перетворення 2-байтового цілого числа в Рядок символів, який представляє запис числа в шістнадцятковій... https://www.cyberforum.ru/ asm-beginners/ thread202450.html Assembler Нахождение индекса минимального элемента массива Условие: Даны натуральные числа A1,…An. Найти индекс минимального элемента массива. Помогите, пожалуйста.. https://www.cyberforum.ru/ asm-beginners/ thread202280.html
Assembler Программа, сравнивающая два числа: не могу найти ошибку
.model tiny .stack 100h .data word1 DW 53 word2 DW ? .code START: mov ax, word1 cmp ax, word2 jb _b ; word1>=word2 (max = word1)
Assembler Вычисление x^n. Нужно исправить. Задание: Вычислить x^N Помогите пожалуйста исправить ошибки. .model small .stack 100h .data X DB 3 N DB 2 Y DW ? https://www.cyberforum.ru/ asm-beginners/ thread202236.html
Assembler Вывод в файл подходящий строк матрицы Не могу сообразить, как осуществить вывод в новый (второй) файл строки матрицы, т.е. оценки троечников. Вывод осуществлял в процедуре с помощью цикла, но выводит неправильно. Может есть какие-нибудь более рациональные методы? Ниже представлен год программы для подсчёта всех троечников (хотя бы одна тройка, но без двоек) в матрице из 10 строк и 4 столбцов – оценки 10 сту-дентов группы за сессию (4... https://www.cyberforum.ru/ asm-beginners/ thread201900.html Assembler Вычисление суммы четных элементов массива
Ломал ломал голову и в итоге сам себя запутал, нужно сделать программу считающую сумму четных элементов массива, условно чисел не более 7,вводятся через пробел, буду признателен за хоть малую помощь .model tiny .code org 100h start: lea dx,a mov ah,0Ah int 21h mov dl,10
Assembler Скалярное произведение векторов https://www.cyberforum.ru/ asm-beginners/ thread201875.html
привет, друзья вот такой вопрос возник с ассемблером, если можете помогите)))))))))))): Составить и отладить программу на языке ассемблера для работы с одномерными массивами. Организовать ввод размерности массива и элементов массива с клавиатуры и вывод полученных результатов на экран. Найти скалярное произведение векторов.
Assembler Счастливые и не очень 3 числа Доброго времени суток! У меня, как и у некоторых форумчан есть чудо предмет в универе "микропроцессорные системы",вот с ним то у меня и загвостка. Задание выглядит следующим образом: разложить 3 любые числа на "счастливые" и "не очень" - по количеству единиц в полубайтах. Проц у нас КР580. Прошу помощи. Заранее спасибо! https://www.cyberforum.ru/ asm-beginners/ thread201688.html
Assembler Составить программу сложения N (N<16) двухбайтных чисел
Никак не получается решить данные задачи.... 1) составить программу сложения N (N<16) двухбайтных чисел. Числа должны располагаться во внутренней памяти или внейшней, начиная с определенного адреса. Результат должен фиксироваться в регистрах R0-R7 или ячейках внутренней памяти. 2) составить программу записи натуральных чисел (число не больше 255) во внешнюю память , начиная с адреса 0000Н....
Assembler Вывод символов в алфавитном порядке от A до Z "лесенкой", со сдвигом на один шаг https://www.cyberforum.ru/ asm-beginners/ thread201375.html
Напишите программу, пожалуйста: Выводит на экран символы от А до Z "лесенкой", со сдвигом вправо. Символы - жёлтого цвета, фон - синего. Благодарю.
0 / 0 / 0
Регистрация: 16.11.2009
Сообщений: 7
03.12.2010, 15:11  [ТС] 0

Сравнение двух знаковых чисел - Assembler - Ответ 1164937

03.12.2010, 15:11. Показов 7623. Ответов 5
Метки (Все метки)

Ответ

Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
STACKS SEGMENT PARA STACK 'STACK'   
    DB 512 DUP   (?)
STACKS ENDS
 
DATA SEGMENT PARA 'DATA'
    
    STR1 DB  'VVEDITE 1-oe znakovoe  chislo      $'
        STR2 DB  'VVEDITE 2-oe znakovoe chislo      $'
        STR3 DB  'min chislo     $'
    chislo1 dw  ?
    chislo2 dw  ?
        BUF DB 20,?,20 DUP ('$')
    buf2 db 20,?,20 dup ('$')
    
DATA ENDS
 
CODE SEGMENT PARA PUBLIC 'CODE'
    ASSUME CS:CODE,DS:DATA,SS:STACKS
 
entr PROC NEAR ;процедура перехода на новую строку
         MOV AH,2
     MOV DL,13
     INT 21H
     MOV DL,10
     INT 21H
     RET
entr ENDP
 
 
 
 
 
MAIN PROC FAR;  
    MOV AX,DATA
    MOV DS,AX
vvod_1:
        ;-----------------
    MOV AH,9                ;код функции (вывод строки)
    MOV DX,OFFSET STR1                   
        INT 21H
        ;-----------------
 
    CALL entr  ; Переход на новую строку
 
    MOV AH,0AH; 
    MOV Dx,OFFSET BUF;  это работа с буфером, его заполняем строкой
    mov chislo1,dx
        INT 21H
    MOv AX,0
        MOV Al,BYTE PTR BUF+1           ;помещение длины строки в AX
    cmp al,1 ;сравниваем длину строки
        Ja otriz ;если больше 1, то это отрицательное число
        
polog:  cmp buf+2, 30h ;защита от дурака, т.е. если код символна меньше кода 0, то повторно вводим
        jb vvod_1
        cmp buf+2, 39h ;аналогично с кодом 9
        ja vvod_1
        mov al, byte ptr [buf+2]
        sub al, 30h
        cbw
        mov chislo1, ax
        jmp end_if                              
        
otriz:  cmp al,2 ;сравниваем длину с 2
        je otriz1 ; если равно 2 то это отрицательное и тогда проверяем
        jmp vvod_2
otriz1: cmp buf+2, 2dh ;сравниваем первый символ с кодом "-"
        jne vvod_1      
        cmp buf+3, 2dh ;защита от дурака, чтобы не вводили "--"
        je vvod_1
        mov al, byte ptr [buf+3]
        sub al, 30h
        neg al
        cbw
        mov chislo1, ax
end_if: 
        CALL entr  ; Переход на новую строку
 
;-----------------
 
vvod_2:        ;-----------------
    MOV AH,9                ;код функции (вывод строки)
    MOV DX,OFFSET STR2 
    mov chislo1,dx                  
        INT 21H
        ;-----------------
 
    CALL entr  ; Переход на новую строку
 
    MOV AH,0AH; 
    MOV DX,OFFSET BUF;  это работа с буфером, его заполняем строкой
    
        INT 21H
;------ аналогично для второго числа проверяем.
    MOv AX,0
        MOV Al,BYTE PTR BUF+1           ;помещение длины строки в AX
    cmp al,1 ;сравниваем длину строки
        Ja otriz11 ;если больше 1, то это отрицательное число
        
polog1:  cmp buf+2, 30h ;защита от дурака, т.е. если код символна меньше кода 0, то повторно вводим
        jb vvod_2
        cmp buf+2, 39h ;аналогично с кодом 9
        ja vvod_2
        mov al, byte ptr [buf+2]
        sub al, 30h
        cbw
        mov chislo1, ax
        jmp end_if1                              
        
otriz11:  cmp al,2 ;сравниваем длину с 2
        je otriz21 ; если равно 2 то это отрицательное и тогда проверяем
        jmp vvod_2
otriz21: cmp buf+2, 2dh ;сравниваем первый символ с кодом "-"
        jne vvod_2      
        cmp buf+3, 2dh ;защита от дурака, чтобы не вводили "--"
        je vvod_2
        mov al, byte ptr [buf+3]
        sub al, 30h
        neg al
        cbw
        mov chislo1, ax
end_if1: 
        CALL entr  ; Переход на новую строку
 
;вот тут начались проблемы. не понимаю как вывести и сравнить. почитал про вывод знаковых не понял.
    CALL entr  ; Переход на новую строку
    MOV AH,2                        ;
    MOV Dx,chislo1                  ;Вывод на экран num1
    ADD Dx,30h                      ;
    INT 21h
CALL entr 
    MOV AH,9
    MOV DX,OFFSET STR3    ;ВЫВОД СТРОКИ С ПОМОЩЬЮ Ф.9
        INT 21H
    
    mov ax,chislo1
    cmp ax,chislo2
    Jg proc_min_out
    jl proc_min_out1
    
    MOV AH,2
    MOV DX,ax;ВЫВОД СТРОКИ С ПОМОЩЬЮ Ф.9
    INT 21H
proc_min_out:
    
        MOV AH,2
    mov cx,chislo2  
    MOV DX,cx;ВЫВОД СТРОКИ С ПОМОЩЬЮ Ф.9
        add dx,30h
    INT 21H
    mov ah,4ch
    int 21h
    jmp endid
proc_min_out1:
    MOV AH,2
    mov cx,chislo1  
    MOV DX,cx;ВЫВОД СТРОКИ С ПОМОЩЬЮ Ф.9
    add dx,30h
        INT 21H
    mov ah,4ch
    int 21h
    jmp endid
endid:
MAIN ENDP
CODE ENDS
END MAIN
END MAIN
если можешь то подправь его просто

Вернуться к обсуждению:
Сравнение двух знаковых чисел Assembler
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.12.2010, 15:11
Готовые ответы и решения:

[TASM] Не работает сравнение знаковых чисел
Здравствуйте, проверьте пожалуйста сравнение знаковых чисел. Нужно найти максимальное из 3-х чисел....

[TASM] Сравнение целых знаковых чисел
Здравствуйте, не мог бы кто-нибудь привести примеры сравнения целых знаковых чисел. Заранее спасибо.

Умножение двух без знаковых чисел, не используя команду mul
Приветствую, вдогонку прошлой темы &quot;Найти остаток от деления двух без знаковых чисел, не используя...

Найти остаток от деления двух без знаковых чисел, не используя команды mul, div
привет, нужно найти остаток от деления двух без знаковых чисел, не используя команды mul, div....

5
03.12.2010, 15:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.12.2010, 15:11
Помогаю со студенческими работами здесь

Сравнение двух чисел
Народ помогите написать код:

Сравнение двух чисел
Требуется сравнить два числа и узнать, какое из них больше. Сделать это нужно на теоретическом...

Сравнение двух чисел
Никогда не работал с Ассемблером, а тут понадобилось написать следующее:написать подпрограмму...

Сравнение двух чисел в HEX-коде
Здравствуйте! Раньше никогда не имел дело с ассемблером. Мне дали задание &quot;Написать программку,...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru