реклама на сайте
подробности

 
 
> Таблицы, как сделать на Си?
Algol
сообщение Jul 31 2006, 08:28
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 140
Регистрация: 7-04-05
Из: Россия, Владимир
Пользователь №: 3 941



День добрый!
Недавно начал осваивать Си (HT-PICC) и все было хорошо, пока мне не приспичило сделать таблицу перекодировки. На асме я писал вот так, все просто и понятно - перед вызовом процедуры кидаем в W цифру, образ которой хотим получить

TABLE
ADDWF PCL,1
RETLW B'11101011' ;0
RETLW B'01100000' ;1
RETLW B'11000111' ;2
RETLW B'11100101' ;3

Вопрос к знатокам, как мне сделать тоже самое, но только на Си?

Сообщение отредактировал Algol - Jul 31 2006, 08:29
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
upc2
сообщение Aug 4 2006, 05:19
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 506
Регистрация: 29-09-05
Из: Донецк
Пользователь №: 9 063



Сделал.

3 0002 008A MOVWF 0xa
4 0003 2804 GOTO 0x4
5 0004 300C MOVLW 0xc
6 0005 0084 MOVWF 0x4
7 0006 300E MOVLW 0xe
8 0007 200D CALL 0xd
9 0008 0183 CLRF 0x3
10 0009 2BF7 GOTO 0x3f7
11 000A 0604 XORWF 0x4, W
12 000B 0180 CLRF 0
13 000C 0A84 INCF 0x4, F
14 000D 0604 XORWF 0x4, W
15 000E 1D03 BTFSS 0x3, 0x2
16 000F 280A GOTO 0xa
17 0010 3400 RETLW 0
18 0011 0782 ADDWF 0x2, F
19 0012 34EB RETLW 0xeb
20 0013 3460 RETLW 0x60
21 0014 34E5 RETLW 0xe5
.............................................
1016 03F7 1283 BCF 0x3, 0x5
1017 03F8 018D CLRF 0xd
1018 03F9 0A8D INCF 0xd, F
1019 03FA 3000 MOVLW 0
1020 03FB 008A MOVWF 0xa
1021 03FC 3001 MOVLW 0x1
1022 03FD 2011 CALL 0x11
1023 03FE 008C MOVWF 0xc
1024 03FF 2804 GOTO 0x4
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Algol   Таблицы   Jul 31 2006, 08:28
- - psL   Цитата(Algol @ Jul 31 2006, 12:28) День д...   Jul 31 2006, 10:29
|- - Костян   Цитата(psL @ Jul 31 2006, 08:29) char con...   Aug 3 2006, 15:19
- - upc2   Использовать конструкцию "switch case"   Jul 31 2006, 12:07
- - Algol   upc2 Конструкция switch - case не даст тождественн...   Jul 31 2006, 14:12
- - upc2   1.Согласен, что массив в по сравнению с switch - c...   Aug 1 2006, 06:00
- - Algol   По п.1 согласен, что с буквами будут дополнительны...   Aug 1 2006, 06:30
|- - _Bill   Цитата(Algol @ Aug 1 2006, 09:30) По п.1 ...   Aug 1 2006, 12:54
- - Algol   В случае Си, так как посоветовал psL. В случае асм...   Aug 1 2006, 13:05
|- - _Bill   Цитата(Algol @ Aug 1 2006, 16:05) В случа...   Aug 1 2006, 13:16
- - upc2   Откуда 60 байт? Программа на Си void main(void) {...   Aug 2 2006, 08:09
- - upc2   С точки зрения экономичности совершенно одинаково,...   Aug 4 2006, 05:01
|- - dialex   Цитата(upc2 @ Aug 4 2006, 10:01) Совершен...   Aug 4 2006, 05:06
- - Костян   В итоге с const мы видем наличие 'retlw0x60...   Aug 4 2006, 09:56
|- - upc2   Цитата(Костян @ Aug 4 2006, 12:56) В итог...   Aug 4 2006, 11:43
- - giran   А подскажите, как разместить таблицу, например ...   Aug 8 2006, 08:50
|- - Костян   Цитата(giran @ Aug 8 2006, 06:50) Пытаюсь...   Aug 8 2006, 09:22
- - giran   То есть что-то типа такого: Кодconst unsigned char...   Aug 8 2006, 10:24
|- - Костян   Цитата(giran @ Aug 8 2006, 08:24) То есть...   Aug 8 2006, 10:46
- - giran   ЦитатаНе нужно оперировать кодами букв Вы немного ...   Aug 9 2006, 02:30
|- - Костян   Цитата(giran @ Aug 9 2006, 00:30) Вы немн...   Aug 11 2006, 20:35
- - giran   Вообщем, вот окончательный вариант, если кому приг...   Aug 9 2006, 05:39
|- - upc2   Цитата(giran @ Aug 9 2006, 08:39) Вообщем...   Aug 11 2006, 05:17
|- - dialex   const unsigned char rus_codes[66]= { 0x41,0xa0,0...   Aug 11 2006, 06:49
- - upc2   dialex Спасибо я разобрался.Различие в таблицах ко...   Aug 11 2006, 08:01


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 07:39
Рейтинг@Mail.ru


Страница сгенерированна за 0.01407 секунд с 7
ELECTRONIX ©2004-2016