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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Массивы, Поиск нужного массива
dxp
сообщение Dec 1 2005, 12:18
Сообщение #16


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Цитата(Igor26 @ Dec 1 2005, 17:16) *
Цитата(Георгий @ Dec 1 2005, 13:37) *

Так двумерный массив один, а одномерных надо два! Или я что то не догоняю?


---------------------
!0! . . . . . . . !200! - это одномерный масиив Array[200]
---------------------

---------------------
!0! . . . . . . . !200! - а это двумерный массив Array[2][200]
---------------------
Вот поэтому он в два раза и больше одномерного. Соответственно, трехмерный будет в три раза
больше одномерного. А вот одномерный Array[400] займет столько же, сколько Array[2][200]

Array1[200] и Array2[200] займут столько же места, сколько Array[2][200]. Кстати, в С/С++ дву-(и более) мерных массивов не бывает. Array[2][200] - это не двумерный массив, а массив массивов. smile.gif


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
Георгий
сообщение Dec 1 2005, 13:19
Сообщение #17


Местный
***

Группа: Свой
Сообщений: 269
Регистрация: 17-11-05
Из: Киров-Москва
Пользователь №: 10 957



Чтоб не рожать новую тему, спрошу здесь. В большом ассемблере как то можно было записать запись типа
.db 0,0,0,0,0,0,0,0,0,,0,0,0
короче, а как не могу вспомнить. В ассемблере АВР студии возможно ли такое же?


--------------------
Обычно последним смеется тот, кто хуже соображает!
Go to the top of the page
 
+Quote Post
DeXteR
сообщение Dec 2 2005, 10:18
Сообщение #18


Местный
***

Группа: Свой
Сообщений: 319
Регистрация: 2-08-05
Из: Одесса
Пользователь №: 7 287



Цитата(Георгий @ Dec 1 2005, 17:19) *
Чтоб не рожать новую тему, спрошу здесь. В большом ассемблере как то можно было записать запись типа
.db 0,0,0,0,0,0,0,0,0,,0,0,0
короче, а как не могу вспомнить. В ассемблере АВР студии возможно ли такое же?


Влолне возмодно
Если адрессдля етой штуки нужен пиши так

Metka:
.db 0,0,0,0,1

А когда его используеш
......
ldi ZL, low(Metka*2)
ldi ZH, high(Metka*2)
lpm
.......
Толька если количество данный через запятую не
кратно 2 асемблер выделит еще один байт

Память программ то 16 разрядная ....
Go to the top of the page
 
+Quote Post
*SERG
сообщение Dec 2 2005, 10:18
Сообщение #19


Местный
***

Группа: Свой
Сообщений: 274
Регистрация: 10-08-05
Из: Екатеринбург
Пользователь №: 7 517



Всё таки решил воспользоватся массивом указателем. Проблемма такая, ну определил он мне ячейку памяти с которой начинается нужный массив, а потом то что? как его считать полностью? Применять дальше переменнуй указатель или как?
Go to the top of the page
 
+Quote Post
Георгий
сообщение Dec 2 2005, 10:55
Сообщение #20


Местный
***

Группа: Свой
Сообщений: 269
Регистрация: 17-11-05
Из: Киров-Москва
Пользователь №: 10 957



Нет, я имел ввиду, что если нужно записать много одинаковых значений, в "большом" ассмблере было что-то типа
.db REP(100) 5
чтобы не писать сто пятерок после метки.

Сообщение отредактировал Георгий - Dec 2 2005, 10:55


--------------------
Обычно последним смеется тот, кто хуже соображает!
Go to the top of the page
 
+Quote Post
Виктория
сообщение Dec 2 2005, 11:40
Сообщение #21


инженер
****

Группа: Свой
Сообщений: 520
Регистрация: 19-09-05
Из: Самара
Пользователь №: 8 701



*SERG>Можно и дальше все обращения к массиву - через указатель
*p[i][j], где i - это Ваша переменная, а j - индекс в найденном массиве a[]. А можно переприсвоить pv=p[i] и обращаться к j-тому элементу массива a как pv[j].

Сообщение отредактировал Vic1 - Dec 2 2005, 11:43
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 9th August 2025 - 15:44
Рейтинг@Mail.ru


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