Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Assembler Error A2006: undefined symbol : base_l Очередная программа не хочет собираться, материться и всё тут...error A2006: undefined symbol : base_l error A2006: undefined symbol : base_m Неопределённый символ, но эти символы объявлены, в чём... https://www.cyberforum.ru/ asm-beginners/ thread1102314.html Assembler Вычитание чисел Assembler
Здравствуйте,помогите пожалуйста переделать программу. Приведена программа по сложению двух чисел,необходимо переделать на вычитание двух чисел с помощью команд SUB, JNS, NEG. Кто может...
Assembler Считать из памяти два байта сегмента команд с заданным эффективным адресом https://www.cyberforum.ru/ asm-beginners/ thread1101643.html
напишите программу, считывающую из памяти два байта сегмента команд с эффективным адресом равным номеру по журналу и выводящую на экран значение младшего байта в шестнадцатеричном виде, а значение...
Assembler Какие регистры для счётчика можно использовать и почему? include '%fasm%/win64ax.inc' section '.code' executable start: sub rsp,8 invoke... https://www.cyberforum.ru/ asm-beginners/ thread1101620.html
Assembler Обработчик прерываний от клавиатуры
Привет, форумчане! Недавно в универе мне задали лабораторную и сказали "Делай как хочешь, но к сроку успей". Вся ироня в том, что это моя самая первая лаба на ассемблере т.к. по сути моя группа...
Assembler Как вывести отрицательно число в Assembler https://www.cyberforum.ru/ asm-beginners/ thread1101495.html
Assembler выводит отрицательные числа вообще?? или же нет ?
Assembler Установка бита в двоичном числе https://www.cyberforum.ru/ asm-beginners/ thread1101475.html
Добрый день! Столкнулся с проблемой при установке бита в двоичном числе. использую функцию bts, однако при запуске выдает следующую ошибку: illegal instruction for currently selected processor(s)....
Assembler Посчитать по формуле
Дана формула: F=0x12569-(0x12+X+Y)+Z+4589 Я вычислил по ней, но выдает не верный ответ.(сверяюсь с калькулятором) Посмотрите код, может что не верно. Помогите! .DATA x dw 2 z dw 4 y dw ...
Assembler [tasm] Замена отрицательных чисел нулями Что нужно исправить, чтобы в ответе отрицательные числа заменял не знаками (.,+-), а нулями. А также, чтобы ответ выводил в виде матрицы? .model small .code A DW 1,1,-2,-4,6 ... https://www.cyberforum.ru/ asm-beginners/ thread1101130.html Assembler Пересылка массива слов. Ассемблер, tasm https://www.cyberforum.ru/ asm-beginners/ thread1101055.html
Изменить данную программу в программу для пересылки массива слов. sseg segment db 128 dup(?) sseg ends dseg segment A db 1,2,3,4,5 B db 5 dup(?) dseg ends cseg segment ...
Как записать десятичное число в dx:ax? (nasm) Assembler
Всем привет. При делении нужно занести делимое(десятичное число) в dx:ax. Нужно его перевести в 16-ую систему или как-то по-другому можно сделать?
Assembler Строка при посимвольном заполнении получается "перевернутой" не могу разобраться с адресацией. нужно сделать, чтобы в пустую строку можно было ввести 8 символов, причем заполнение строки должно происходить посимвольно. однако у меня запись символов в строку... https://www.cyberforum.ru/ asm-beginners/ thread1100780.html
3 / 3 / 1
Регистрация: 17.02.2013
Сообщений: 63
0

Работа со строкой - помогите найти ошибку - Assembler - Ответ 5809523

20.02.2014, 23:47. Показов 387. Ответов 1
Метки (Все метки)

Студворк — интернет-сервис помощи студентам
Не могли бы помочь найти ошибку. В проге ввожу двоичное число без эха посимвольно с предварительной проверкой, затем записываю их в строку. потом хочу получить численное представление числа для сложения с другим числом. для этого просто задаю переменную number1 с нулевым значением и если при вводе встречается "1", то после сдвига соответствующего бита этого числа в сторону младшего разряда прибавляю единицу и сдвигаю обратно, однако после преобразования число не меняется. что нужно исправить?
вот собственно код:
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
.model small
.stack 900
.data
hello db "Input number1: $"
num1 db "        ", 13, 10
num2 db "        ", 13, 10
res db "        ", 13, 10
number1 db 00000000b
.code
start:
;инициализация сегментного регистра
    mov ax, @data
    mov ds, ax
;очистка экрана
    mov  ax, 0600h  
    mov  bh, 07     
    mov  cx, 0000   
    mov  dx, 184Fh  
    int  10h       
;вывод сообщения
    mov ah, 09h
    mov dx, offset hello
    int 21h
    
    mov cx, 08h
    xor bx,bx
    mov dl, byte[number1]
r1:
    xor ax,ax
    int 16h
    cmp al, "0"
    jb r1
    cmp al, "1"
    ja r1
    mov num1[bx], al
    cmp al, "1"
    je zap1
    
continue:
    inc bx
    loop r1
    jmp next
zap1:
    push cx
    push ax
    mov ax, 111h
    sub ax, bx
    mov cl, al
    shr dl, cl
    add dl, 1
    shl dl, cl
    pop ax
    pop cx
    jmp continue
 
next:
    mov number1, dl
    mov ah, 02h
    int 21h
    mov ah, 4ch
    int 21h
end start


Вернуться к обсуждению:
Работа со строкой - помогите найти ошибку Assembler
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.02.2014, 23:47
Готовые ответы и решения:

Работа с файлами, помогите найти ошибку.
Нужно написать программу которая будет выписывать в файл значения синуса от 0 до 2Pi с шагом Pi/11...

Простенькая программа с символьной строкой. Надо найти ошибку.
Программа, которая ищет в введённой строке вукву A и заменяет её на букву B и выводит полученную...

Перед строкой матрицы с номером К вставить строку из нулей (найти ошибку)
const max=20; var x:arrayof integer; m,n,i,j,k,t:integer; begin clrscr; randomize; repeat...

Программа пишет ошибку!! Помогите найти ошибку
Program Summa; var i, N, M: integer; begin Writeln ('Введите значение N:'); Read (N); ...

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

Помогите найти ошибку: По двум сторонам и углу найти все остальное
Доброго времени суток. В универе дали задание написать программу "По двум сторонам и углу между...

Найти коэффициент при 10 степени в разложении бинома Ньютона (помогите найти ошибку).
"После умножения скобок и приведения подобных в полиноме будет слагаемое с x**10. Перед ним стоит...

Помогите найти ошибку в коде. Найти сумму ряда
Добрый день, помогите найти ошибку. Задача: Найти сумму ряда, вычисление ввести до тех пор пока...

Помогите найти ошибку
#include <stdio.h> #include <conio.h> void main () {int i,j,s; int ** b=new int*(4) for...

Помогите найти ошибку?
Мне нужно что бы по нажатию кнопки значение суммарной яркости заносилось в текстбокс. Но почему то...

помогите найти ошибку
Процедура Сформировать() Сообщить("Идет расчет");...

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