2012-05-01 3 views
0

Подсчитайте количество символов в строке ввода и завершите ввод нажатием кнопки.Можем ли мы использовать ' n' в сборке?

MOV AX, 1 
MOV AL, 0 
INPUT: INT 21H 
    INC AL 
    CMP DL,'\n' 
    JE OUT 
    LOOP INPUT 
OUT: 

В приведенном выше коде я использовал \n. Мне любопытно, можем ли мы использовать его или мне придется использовать код ascii? Пожалуйста помоги.

+0

Ассемблер переводит символьные литералы в число, скорее всего, используя ASCII. –

+2

Почему бы вам не попробовать? Просто соберите свой код и попробуйте! – Burkhard

+0

Ваше первое предложение звучит как домашнее задание. Если это пожалуйста, отметьте его домашним заданием. – PeeHaa

ответ

2

Это зависит полностью от вашего ассемблера. Вероятно, да, в противном случае используйте таблицу ascii, чтобы перевести ее (до 0x0A или 10) самостоятельно.

Возможно, вам стоит просто попробовать собрать его и посмотреть, работает ли он.

2

'\n' не является постоянным языком ассемблера. По крайней мере, не на большинстве языков ассемблера.

Вам нужно будет преобразовать его напрямую, используя набор символов. Вы можете смело предположить ASCII практически для всех современных процессоров, поэтому \n будет 10 (десятичный) для большинства операционных систем. В Windows используется двухсимвольная последовательность 13 и 10.

 Смежные вопросы

  • Нет связанных вопросов^_^