КАК РАБОТАЕТ СТЕК | ОСНОВЫ ПРОГРАММИРОВАНИЯ

  Рет қаралды 225,577

Alek OS

Alek OS

Күн бұрын

Пікірлер: 299
@AlekOS
@AlekOS 3 жыл бұрын
00:00 Введение 00:49 Что такое стек 01:23 Рост в обратную сторону 02:20 Указатели 03:35 Команды для работы со стеком 04:54 Функции 06:30 Команды перехода 07:18 Фрейм стека 10:37 Переполнение стека 10:50 Передача параметров в функцию 13:09 Способы передачи параметров 13:49 Локальные переменные функции 15:07 Итог
@НикитаЗабаштин
@НикитаЗабаштин 3 жыл бұрын
Пишешь код на высокоуровневых языках, считаешь, что понимаешь что-то в программировании и даже называешь себя программистом. Однако после просмотра твоих видео сразу становится понятно, что без всего описанного в них фундаментала ты не «программист», а всего лишь «кодер», видящий лишь верхушку айсберга. Потрясающий контент, ни в коем случае не останавливайся в развитии канала 🔥🔥🔥
@dr.margulis7773
@dr.margulis7773 3 жыл бұрын
@@WhiteZSY ни один нормальный человек свою программу ПОЛНОСТЬЮ на асме не пишет, только определённые участки кода. Мой товарищ, который пишет на плюсах, использует асм для написания ядра вычпроцессов и только, всё остальное, соответственно, на плюсах. Без знаний асма его софт был бы, мягко говоря, тормознутым.
@Acid31337
@Acid31337 3 жыл бұрын
Если думаешь, что нашел какой-то глубокий практический смысл в этом, то тебе просто показалось. Это абсолютно бесполезное с точки зрения программирования в 2021 году знания, не нужно это нигде применять. Только хуже сделаешь, разрушив существующие абстракции.
@realfootball338
@realfootball338 3 жыл бұрын
Просто начинаешь понимать лучше как оно работает. Для написания эффективных программ конечно лучше это понимать. А вообще можно быть крутым челом, хорошо понимать прикладную область к примеру data science, AI, CV и писать на языках с автоматическим управлением памятью. Программист же - просто не понимающих как это работает. И если уже круто кодишь эффективно на JS или Python то эту теорию и C поймешь с чашкой кофе. Я когда то думал что обучаться нужно с ASM/C и архитектуры железа. Теперь понимаю что лучше с JS, потом тренировка мозгов алгоритмами, и потом ниже и ниже. Считаю такой путь наиболее эффективным
@fomka_wyverno
@fomka_wyverno 3 жыл бұрын
Не переживай когда нибудь и наши современные ЯП заменят и будут вместо их более абстрактные языки. Это лишь дело времени не все же бесконечно (Кроме Java)
@VoidObj
@VoidObj 3 жыл бұрын
@@fomka_wyverno да, лет через 50 запускаешь ИДЕшку, а там одна кнопка - "сделать пистато" 😂
@wanderbee8278
@wanderbee8278 2 жыл бұрын
Я любитель. Мне не давало покоя, почему меня больше интересует низкоуровневое программирование, чем высокоуровневое, понимая, что первое не столь востребовано и популярно. И я рада, что наконец-то я нашла отражение своим знаниям! Спасибо за видео!🤩
@atbt230
@atbt230 3 жыл бұрын
Подача информации на высочайшем уровне как с точки зрения представления, так и содержания.
@alexfantast6566
@alexfantast6566 3 жыл бұрын
Огромное спасибо за это видео! Концентрированная, систематизированная, рационально укомплектованная и последовательно представленная информация - ничего лишнего. Моё почтение.
@Agent_-bn7xp
@Agent_-bn7xp 3 жыл бұрын
Твой канал - это лучше что я встречал на ютубе....
@МаксимМакаров-к8б
@МаксимМакаров-к8б 3 жыл бұрын
По формату ты собрал все лучшее от (субъективно) sorax и windrton. Но! По качеству материала ты превзошёл их на голову. Очень приятный и концентрированный контент. Спасибище тебе. Я теперь могу быть уверенным, что у начинающих есть шанс чему-то научиться. Если конечно, они придут именно на этот канал.
@realfootball338
@realfootball338 3 жыл бұрын
Спасибо - я начинаю учить ассемблер для себя - я фронтенд с опытом 4 гола но реально захотел писать что то более сложное на C/++/Rust - и понимаю что для начала нужно понимать железо - твой канал в этом отчасти сильно помогает! Здоровья тебе !!!
@ilyakhi9246
@ilyakhi9246 2 жыл бұрын
Иметь цельную картину мира - завсегда полезно. Понимание работы всяких наворотов в Java Script - колбэки, хоистинг, евент-лупы... - вот это вот всё гораздо легче усваивается, когда знаешь работу железа и компиляторов. Тогда вот эти вот приседания с асинхронностью и т.п. кажутся само собой разумеющимся.
@notOnlyPython
@notOnlyPython 2 жыл бұрын
Фраза, нечего не понятно но очень интересно. Это именно про стек. Но если без шуток, это реально очень сложно. Я хочу в этом разобраться досконально. Спасибо!
@victoradamenja9032
@victoradamenja9032 Жыл бұрын
На самом деле просто. Была такая программа debug.exe Сохранилась до win7 32. Она работала в dos. Это отладчик Там можно трассировать программу и смотреть состояние регистров. Вот в ней всё понятно.
@NKernytskyy
@NKernytskyy 3 жыл бұрын
ЛОЛ. Вже через 3 хвилини. я зрозумів, що це найкраще пояснення теми, яке я бачив. ПОВАГА автору. Достойний контент. Якість виконання на висоті. Більше такої годноти.
@mrfriz
@mrfriz Жыл бұрын
Что за тигр этот лев?) Универ Синергия, специальность "Веб разработка", 1 курс, предмет "Теория программирования". Материал подан почти сухим текстом, без примеров. Пришёл на Ютуб, чтобы посмотреть что я вообще должен понять из материалов предмета. Огромное спасибо за подачу, оформление. Всё прекрасно до деталей: анимация, звуки, примеры, объяснение.
@user-zgb
@user-zgb Жыл бұрын
Визуализация на высшем уровне. Отличная подача, отличный звук. Браво
@vlvmakeev
@vlvmakeev 3 жыл бұрын
Большое спасибо за такие качественные и эффективные ролики, Вы делаете большое дело!
@ToxaKolganov
@ToxaKolganov 3 жыл бұрын
Огромное спасибо! Никак не мог понять процессы в стеке, теперь стало намного понятней с Вашим подходом к объяснению! )
@mariavladlife4429
@mariavladlife4429 Жыл бұрын
большое спасибо 💜 не ожидала, что в видео по стеку будет объяснено куда подгружаются функции, и как именно работает стек в связи с функциями 🤍 - до этого никак не могла понять, как это работает
@kotifnat
@kotifnat Жыл бұрын
Вы поняли как работает call команда? Просто когда он ее описывает говорит, что "при вызове call proc в стек записывается адрес возврата и стек поинтер переходит на указанный в call адрес (proc). Но потом при описании фреймов функции после вызова call SP стоит на месте
@artembrg
@artembrg 3 жыл бұрын
полезная инфа для тех, кто не в курсе ассемблера) классная подача, с удовольствием повторил материал универовского курса!) автору развития и процветания, такой контент не должен остаться незамеченным)
@alfahomak
@alfahomak 2 жыл бұрын
Спасибо большое. Я сам веб-разработчик, но захотелось углубиться в низкоуровневое программирование. Отличная подача материала, ни капли воды (как у многих), то есть все 15 минут полезной информации.
@pavelg9855
@pavelg9855 2 жыл бұрын
Самый полезный ролик, соединяющий в цельную картину информацию из остальных, с самым маленьким количеством просмотров)
@ГеоргийЖданов-в3п
@ГеоргийЖданов-в3п 2 жыл бұрын
Боже, как хорошо что есть такие контентмейкеры. Спасибо тебе огромное. Благодаря тебе начинаю потихоньку разбираться в основах программирования. Надеюсь мне хватит упорства и сил чтобы обуздать эту нелегкую в освоение штуку. Продолжай в том же духе, у тебя хорошо получается объяснять. Постараюсь расти вместе с твоим каналом )
@secundus6457
@secundus6457 6 ай бұрын
Cупер-понятно и доступно, благодарю.
@ЯнаВолкова-ц2о
@ЯнаВолкова-ц2о 3 жыл бұрын
Отличное видео! Мне в целом тяжело дается вся эта тема с памятью компьютера, регистрами и ассемблером. Но Ваш ролик помог чуть лучше это понять. Думаю, еще пара просмотров - и стек перестанет казаться мне таким страшным. Спасибо Вам огромное!
@alexvolkov529
@alexvolkov529 2 жыл бұрын
я по нескольку раз пересматриваю одно видео
@some5npdef
@some5npdef 2 жыл бұрын
@@alexvolkov529 кто-то может назвать это "фуу, тупость какая-то" и это будут говорить те люди, которые не поняли и не захотели разобраться. Поэтому одобряю такой подход:)
@steplerstationery5231
@steplerstationery5231 2 жыл бұрын
Воистину, да не умрет образовательный контент!!!
@s.a.3408
@s.a.3408 3 жыл бұрын
Спасибо! За день просмотра твоего канала я получил столько же информации, сколько за 5 лет учебы в университете 😃👍
@kardanium
@kardanium 3 жыл бұрын
Про стек ничего нового не узнал, но в варианте с регистром BP ниразу не встречался. Видимо это фишка интеловской архитектуры. Я просто знаю архитектуру ARM. У ARM Cortex-Mх два регистра SP, но один для режима ядра, другой для режима приложения. Это очень удобно при реализации операционной системы. Расскажите в следующем ролике о прерываниях, системных вызовах и диспетчеризации задач.
@666VORON999
@666VORON999 2 жыл бұрын
Хоть и был знаком со стеком ранее, но местами была новая инфа. Спасибо за годноту!
@deniskarter7088
@deniskarter7088 2 жыл бұрын
Шикарные видео! Сложности нас не пугают, даже наоборот - хочется изучить ассемблер)) Благодарю Вас за такие видео!
@glockholod5469
@glockholod5469 2 жыл бұрын
Alek если не сложно , сними пожалуйста ролик , как на физическом уровне процессор обрабатывает команды , очень интересно
@anonsd5521
@anonsd5521 7 ай бұрын
Пожалуй лучший ютубер, рассказывающий о низких уровнях. Спасибо.
@John_Smith_Java
@John_Smith_Java 2 жыл бұрын
Надо раз пять посмотреть, чтобы понять. Спасибо.
@igorm6585
@igorm6585 10 ай бұрын
Самое классное объяснение! Огромное спасибо автору!
@alexzhelyapov3556
@alexzhelyapov3556 Жыл бұрын
Это лучшее объяснение, которое я встречал!
@jopa19991
@jopa19991 3 жыл бұрын
Спасибо за наглядную демонстрацию использования параметров и сохранения стек поинтера в callee - так яснее, чем в голове представлять.
@AleksandrOsadchy97
@AleksandrOsadchy97 8 ай бұрын
Ничего не понятно но очень интересно
@ekaradon
@ekaradon 3 жыл бұрын
Слушать такое одно удовольстие
@ВадимМакаров-п4л
@ВадимМакаров-п4л 3 жыл бұрын
Потрясающе!
@Oracule-bh5vy
@Oracule-bh5vy 3 жыл бұрын
Поражает насколько хорошо Вы ознакомились с материалом. Буду ставить максимальное количество лайков. Ваши труды должны стать Достоянием. Где-то во Вселенной образуется чёрная дыра Если Вы не станете преподавателем
@dartvolchannel1450
@dartvolchannel1450 11 ай бұрын
Отличный видос, разобрался в работе стека❤
@aleksanderostrowski7785
@aleksanderostrowski7785 Жыл бұрын
Спасибо. Подобный контент очень нужен!
@ЯковСиничкин
@ЯковСиничкин 2 жыл бұрын
Видео - бомба! Я таким темпом с вами, того гляди, ассемблер выучу
@danilgaijin8366
@danilgaijin8366 3 жыл бұрын
Жги дружище. Полезнейшее видео
@ewgen1y
@ewgen1y 9 ай бұрын
Как говорится ничего не понятно, но очень интересно 😅. Подача класс
@denruslife9845
@denruslife9845 2 жыл бұрын
Спасибо за выпуск! Супер!
@mk-du2kd
@mk-du2kd Жыл бұрын
Wow, Просто МОЛОТ!
@dimitrijnekrasov
@dimitrijnekrasov 2 жыл бұрын
Парень, супер подача! Спасибо!
@DmitriNesterov
@DmitriNesterov Жыл бұрын
Ничто так не мотивирует, как ненавязчивый звук шарика от пинг-понга! 🎉 Круть. Слышна заминка, когда стек пошёл затирать вектора прерываний ;) стек растёт с 1:50
@annyonghoseyo9195
@annyonghoseyo9195 3 жыл бұрын
ОМГ какой у тебя классный и полезный контент! прямо таки кладязь. Жаль только, что видео пока мало
@kazarovroman
@kazarovroman 3 жыл бұрын
Спасибо. Пили такие видео еще!
@mirage7596
@mirage7596 Жыл бұрын
Лучший, обожаю смотреть твои ролики 👏😀
@Legomegger
@Legomegger 11 ай бұрын
Качественнейший контент
@МихасСупре
@МихасСупре 3 жыл бұрын
Круто!👍 Нужно ещё 99 раз посмотреть.
@АлексейСабодаш
@АлексейСабодаш 2 жыл бұрын
Спасибо! Прекрасная подача материала.
@alexsabyr
@alexsabyr 9 ай бұрын
Спасибо, было интересно
@fiodar_vasilets
@fiodar_vasilets 5 ай бұрын
Топ!
@mikhaildiesperov2345
@mikhaildiesperov2345 2 жыл бұрын
Это мне архиважно для работы, но я понял, наверное, только треть. Думаю, надо пересматривать или искать похожую информацию, только другими словами. Спасибо за видео.
@SerakovVitaliy
@SerakovVitaliy 2 жыл бұрын
Нереально круто! Спасибо за столь ценный контент.
@АлексейШтейников-ц4ц
@АлексейШтейников-ц4ц 3 жыл бұрын
самое лучшие видео по стеку которое я видел
@dariastroeva6779
@dariastroeva6779 2 жыл бұрын
Благодарю за работу! ♥
@oleksandrdavydenko6343
@oleksandrdavydenko6343 3 жыл бұрын
Круто! Спасибо!
@escapeplan4242
@escapeplan4242 3 жыл бұрын
Нужно больше просмотров для этого канала!
@КонстантинКравчук-б8я
@КонстантинКравчук-б8я 2 жыл бұрын
Очень информативно и наглядно, спасибо!!
@artem7p124
@artem7p124 3 жыл бұрын
Час ночи, сплю и пытаюсь думать Но не думается Офигенный контент! Спокойной ночи
@videostream5921
@videostream5921 2 жыл бұрын
Спасибо, отличный канал, отличные видео, качественный монтаж и четкая дикция.
@Выктотакие-р2ф
@Выктотакие-р2ф 5 ай бұрын
Neo блин, мне пока ничего не понятно, но очень интересно.
@Arhi78
@Arhi78 3 ай бұрын
Занятно, тут в 10 раз меньше дизлайков, чем у видео с процессором. Я не стал отрываться от масс и считаю этот контент очень годным и достаточно изложенным, в отличие от процессора.
@Hytpu9
@Hytpu9 2 жыл бұрын
Смотрю подряд все видео с самого начала публикации. Как же все грамотно структурировано, просто космос. Грустно что канал не самый популярный. Автор, возможно тебе стоит задуматься над выпуском своих видео на английском, тогда шанс взлететь увеличится, т.к. охват аудитории будет выше. Успехов!
@bpospanov
@bpospanov Жыл бұрын
Спасибо, брат
@MrSirus83
@MrSirus83 3 жыл бұрын
Более подробно и толково
@nt2548
@nt2548 3 жыл бұрын
Большое спасибо Вам. Посмотрел несколько видео. Хорошо обясняете и графика на уровне.
@AxionenML
@AxionenML Жыл бұрын
Почему я не наткнулся на этот канал когда проходил ассемблер в универе...
@serega0117
@serega0117 2 жыл бұрын
Помню лет 20 назад когда писал что то на ассемблере все это знал. Теперь смотрю и глазами хлопаю))))))
@rage8207
@rage8207 3 жыл бұрын
о, первое видео которое я у тебя посмотрел, автор, даже перепроверил что смотрю, в какой-то момент показалось что твоего коллегу Winderton'а) спасибо за ролик, как раз дошёл до того момента в профессиональном росте, когда низкоуровневые механизмы становятся одновременно понятны и интересны, вдохновения и вагон чая!
@frontcatbackend5148
@frontcatbackend5148 2 жыл бұрын
Полезные у тебя видео. Было бы замечательно, если бы ты давал ссылки на литературу из которой ты это всё узнал. Спасибо!
@Artem-er3ie
@Artem-er3ie 2 жыл бұрын
Есть книга "Архитектура компьютера " , там всё по полочкам розложено,разложено больше)Можна чказать что она для сис админов, но лишней не юудет
@xp4ns
@xp4ns Жыл бұрын
Спасибо!
@IlyaKuznetsov1983
@IlyaKuznetsov1983 Жыл бұрын
Музыка настраивает мозг на сосредоточение 😂
@prismo1975
@prismo1975 Жыл бұрын
4 день, 4 видео, 4 конспект на 6 листов а 4 (у меня размашистый почерк), и мозг находится где-то на уровне близкому к расплавлению ядра реактора, но мне почему-то это нравится. Спасибо за видео).
@Mez0ry1337
@Mez0ry1337 3 жыл бұрын
хорошее видео продолжайте в том же духе но все же хотелось бы поживей немного ибо ваш голос слишком монотонный но сама суть поданного вами материала меня устраивает, лайк
@orestdymarchuk2910
@orestdymarchuk2910 3 жыл бұрын
Сложно, к некоторым вашим видео понимание приходит постепенно после каждого просмотра и записей, к некоторым к сожалению намного тяжелее Если вам не трудно, добавляйте информацию или ссылки на разного рода информацию, что такое функция например Спасибо
@klondike2009
@klondike2009 3 жыл бұрын
Ээээх, повстречался бы Ваш канал лет на 10 раньше ))) У вас в 10 минутах умещаются знания, до которых я месяцами доходил!
@mtb-love-belarus
@mtb-love-belarus 2 жыл бұрын
10 лет назад был Sorax)
@proletarian
@proletarian 2 жыл бұрын
Я джаваскриптизер, но начинал из микроконтроллеров (avr c), и считаю что мне это сильно помогло
@ВячеславІгоровичДужий
@ВячеславІгоровичДужий 2 жыл бұрын
большое спасибо за контент. правильно. полезно. рекомендуется к изучению.
@boson_higgs
@boson_higgs 2 ай бұрын
Спасибо, насчет стека вроде как понятно, но вот BP запутал еще больше.
@phil2964
@phil2964 3 жыл бұрын
Alex не останавливайся, твой контент супер 👍
@ogin6280
@ogin6280 3 жыл бұрын
ух не понял но очень интересно. Мой уровень начальный. придётся рыть вопросы в сети. Здорово, есть от чего оттолкнутся.
@vesyalchok490
@vesyalchok490 2 жыл бұрын
Отличное видео! Огромный лайкос)
@mammadov-ali-zahid
@mammadov-ali-zahid 2 ай бұрын
Небольшая правка для 0:55 Утверждение, что оперативная память делится ровно на две части - стек и кучу - не совсем верно. Хотя стек и куча действительно являются важными областями памяти в контексте программирования, оперативная память не делится ровно на две части и включает в себя гораздо больше различных областей. Когда программа запускается, операционная система выделяет ей адресное пространство, которое делится на несколько сегментов, каждый из которых имеет своё назначение. Основные области памяти процесса включают стек, кучу, сегмент данных, сегмент кода и сегмент командной строки и среды. Стек используется для локальных переменных и параметров функций, куча - для динамически выделяемой памяти. Сегмент данных содержит глобальные переменные и делится на инициализированные и неинициализированные данные (BSS). Сегмент кода включает исполняемый код программы, а сегмент командной строки и среды содержит аргументы и переменные окружения. Размеры этих областей памяти не фиксированы и могут изменяться в зависимости от потребностей программы, и оперативная система управляет ими динамически.
@ПростоРая
@ПростоРая 14 күн бұрын
и оперативная (в смысле Операционная) система? Или её подраздел, отвечающий за управление Памятью( ОЗУ+КЭШ+Регистры) Memory Management?
@user-race-Vulcan
@user-race-Vulcan 2 жыл бұрын
Друг, ты топчик!!! Не останавливайся, что-то ты перестал ролики делать. Идеи кончились?
@AlekOS
@AlekOS 2 жыл бұрын
Тем ещё очень много, а вот время и возможности ограничены
@mashamell0w
@mashamell0w Жыл бұрын
Очень круто!
@ДаниилСоколов-о8р
@ДаниилСоколов-о8р Жыл бұрын
Четко, спасибо)
@mrcotofei4031
@mrcotofei4031 3 жыл бұрын
Очень полезная и хорошо поданная информация
@dmitrymitrofanov3920
@dmitrymitrofanov3920 3 жыл бұрын
самое сложное, из всех, что я посмотрел на канале(смотрю с начала по порядку)
@billlanc9461
@billlanc9461 2 жыл бұрын
Просто огонь!
@prestigiograce5066
@prestigiograce5066 3 жыл бұрын
Вот действительно качественный контент! Безусловно очень полезный! Лаконично и по делу. Но! Это совсем не для новичков. Вернее, не для совсем новичков. Чтобы понимать о чём речь, нужно уже иметь общее представление о принципах работы памяти и программ. Видео скорее делает из представлений точные знания. Рассказывает что и как называется. Я, будучи новичком понимаю о чём речь, но месяца 4 назад, когда я только начал познавать волшебный мир программирования не понял бы почти ничего... И сейчас то далеко не всё понятно. Объяснения даны на исключительно программерском языке, кое что не объясняется вовсе. Это не делает лекцию плохой, но и простой в освоении тоже.
@vlados_981
@vlados_981 2 жыл бұрын
Думал, что смогу просто посмотреть и понять сразу, но это не так. Пересмотрел видео, законспектировал и нарисовал схемки стеков и только так разобрался. Материал очень хорошо подан, продолжай в том же духе
@yura131314
@yura131314 Жыл бұрын
Думаю, что нужно пописать на ассемблере чтобы все понять до конца
@vlados_981
@vlados_981 Жыл бұрын
@@yura131314 абсолютно правы. Уже подружился за это время с ассемблером в рамках курса в универе
@LOL-nq3ky
@LOL-nq3ky 3 жыл бұрын
Визуализация хорошая. Смотрится легко, как пёрышко. Спасибо. Единственное, всё-таки нужно было упомянуть в самом начале, что в большинстве случаев речь идёт о виртуальном адресном пространстве. Второе замечание. Взгляд на то, что память делится на стек и кучу, справедлив только с позиции программирования на высокоуровневом языке, либо в какой-то специальной среде.
@alwaysdrunked
@alwaysdrunked 2 жыл бұрын
он в начале сказал что для простоты понимания работаем в реальном режиме.
@LOL-nq3ky
@LOL-nq3ky 2 жыл бұрын
@@alwaysdrunked можно тайм-код? Но, даже если это и было где-то сказано, то не имеет отношения к моему комментарию.
@jellyredfox
@jellyredfox 2 жыл бұрын
если до этого я что-то понимал, то здесь все, мозг вышел на первой остановке
@r4l41
@r4l41 2 жыл бұрын
Золото Ютуба!
@muradshirinov4906
@muradshirinov4906 8 ай бұрын
Все хорошо единственное что музыка на фоне сильно отвлекает
@crewcut7884
@crewcut7884 2 жыл бұрын
Круто! Больше видео.
@pingwinbl4773
@pingwinbl4773 3 жыл бұрын
Великолепный ASMR!!!!
@ЮрийНиколаевич-л6т
@ЮрийНиколаевич-л6т 2 жыл бұрын
спасибо тебе что это делаешь👍
This Game Is Wild...
00:19
MrBeast
Рет қаралды 157 МЛН
БУ, ИСПУГАЛСЯ?? #shorts
00:22
Паша Осадчий
Рет қаралды 2,9 МЛН
Noodles Eating Challenge, So Magical! So Much Fun#Funnyfamily #Partygames #Funny
00:33
Стек и Регистры процессора
23:55
PracticU - онлайн IT курсы
Рет қаралды 2,8 М.
Что такое Framework простыми словами?
9:51
Sergey Nemchinskiy
Рет қаралды 191 М.
Уроки С++ Стек, Куча, Указатели (11)
26:06
Software Development
Рет қаралды 40 М.
Что такое TCP/IP: Объясняем на пальцах
15:38