I've been searching for a teacher to bring me from c++ to the very low level and you're the first to do it with clarity, quality video editing, and a clear love for assembly language! Thank you
Re: Registers (18:00), x86-64 introduced new general purpose registers, which are just numbered R8-R15, so I believe the R is used now with RAX for consistency. To support this, the transition from 16-bit to 32-bit did not involve the introduction of new general purpose registers, just the extension of existing ones.
That ending. Hahaha. I love it! You're a beautiful woman and very good at explaining technical topics. I wish you a successful journey with all of your projects. I'm learning software engineering as a 30 year old who studied history at college but failed at completing it... All techniques and methodology for researching and all the practice I received for reading and writing have been invaluable for my dubious career choices; both as a baker for a few years and now as a software engineer from now on. DCIC is also a very good resource I was lucky to find. Currently working through it. Thanks for all this content. I will tackle it fiercely after I learn C for a while.
As other people have pointed out a signed integer's minimum value is one less than the negative maximum, which has the interesting side effect that the abs() of an signed integer isn't always positive.
Actually, signed integer types like char are usually stored in 2's complement format, which avoids having both a positive and a negative zero value. The minimum value you can represent in n bits is - 2^(n-1), while the maximum is 2^(n-1) - 1, so in case of char -128 to 127. If you look into this, it is also worth understanding how overflow works.
I think seeing a video with Lattner and Feldman (creator of Roc) and his podcast talked something about this with ‘2 complement to overflow’, which is considered standard compiler behavior. I would be lying if I said I completely understand this, but something to note. I think this behavior on both GCC and Clang. Edit: Okay so it was about SIMD and how overflow is done with SIMD. It is a fairly interesting explanation, but not so related to what you were saying I believe.
Your videos have been incredible! I've been a hobby dev for about 8 years, and always felt the need to understand how things work under the hood. I took a bootcamp (mainly web dev) last year and haven't had much luck on jobs, so I'm back in school and they are having me skip straight to cs2 and I have needed to cram C++ into my brain over the last two months (after mainly working with Python, JS, and a bit of C#), your videos have changed my perspective on so much. If I had to learn it all again, I’d be right back here. You're an amazing teaching resource and a true inspiration, I'm excited to see where the channel goes!
When i noticed that the memory diagrams addressed 4-bit values it startled me and eventually i thought that this was done just to make the diagram smaller
Great video! Interesting take on books. I own some but I don't find myself reading them. Like yourself I usually find what I need freely, and read up on it.
Regarding the pronunciation of "tuple": the word is a generalization of quintuple, sextuple, etc., so a logical pronunciation should be whatever rhymes with those words. Of course languages don't always adhere to strict logic, and Wiktionary lists a total of five different pronunciations.
XORing registers (we didn't have variables per se, in a Series Six PLC registers were the variables) was the go-to way of zeroing out the registers. Kind of silly to do it this way these days, but back when 1K PLCs ran your plant, it paid to be frugal.
Oh yeah! Art Attack with Beni Weber (in the German Version) was one of my favourite TV-Shows. (at 02:21) "I wanna do this for every part of Software field..." -> Yes Please! Count me in! 👍 [EDIT] Oh and on the Topic of Games and Coding: I love to play Stationeers and Stormworks. Stationeers uses a MIPS like Assembly Language (called IC10), Stormworks uses Lua.
I would like to say I paid better attention to the code and noticed all of these mistakes, but TH-cam limits me to 360p in the browser, so I'd have to download the videos and force a higher resolution, which is just annoying. In the browser all coding videos are basically just fuzz. The only correction I had for this video was already addressed by the pinned comment, but I'll add that you can simply include limits.h and print all the limits out for all the standard numerical types. I'm sure someone has a version of that somewhere, and I would post my own, but TH-cam also deletes every post I make that has a link or long tracts of code in it.
And re: the IDE - it's just VS Code, no special setup. The only thing maybe somewhat unusual in what I do with VS Code is that I put the terminal in the editor area - which you can find with cmd/ctrl+shift+p "Terminal: create new terminal in editor area". The C compiler I typically use is clang (along with this template sometimes - github.com/neoeno/toy-c-project-template ) and how you install that will probably vary depending on your OS. If I'm missing something that looks different though, do point it out and I can advise!
Ooops! The signed byte range is -128 to +127. I think this is a side effect of not having +0 and -0 as valid number in the range.
Well, one for the next video 🤣 Thanks
Errata to errata is a time honoured tradition, tbh
I've been searching for a teacher to bring me from c++ to the very low level and you're the first to do it with clarity, quality video editing, and a clear love for assembly language! Thank you
Re: Registers (18:00), x86-64 introduced new general purpose registers, which are just numbered R8-R15, so I believe the R is used now with RAX for consistency. To support this, the transition from 16-bit to 32-bit did not involve the introduction of new general purpose registers, just the extension of existing ones.
Ha! That dig at Bret Victor.
You're a fantastic instructor. I'd been looking for your style of content since I started learning.
Art attack! Blast from the past
Wow art attack! That caught me completely by surprise. Such good memories.
Great video!! Very insightful. And the ending 💀💀💀
That ending. Hahaha. I love it! You're a beautiful woman and very good at explaining technical topics. I wish you a successful journey with all of your projects.
I'm learning software engineering as a 30 year old who studied history at college but failed at completing it... All techniques and methodology for researching and all the practice I received for reading and writing have been invaluable for my dubious career choices; both as a baker for a few years and now as a software engineer from now on. DCIC is also a very good resource I was lucky to find. Currently working through it.
Thanks for all this content. I will tackle it fiercely after I learn C for a while.
As other people have pointed out a signed integer's minimum value is one less than the negative maximum, which has the interesting side effect that the abs() of an signed integer isn't always positive.
Helo kay, your upload makes my day.
Actually, signed integer types like char are usually stored in 2's complement format, which avoids having both a positive and a negative zero value. The minimum value you can represent in n bits is - 2^(n-1), while the maximum is 2^(n-1) - 1, so in case of char -128 to 127. If you look into this, it is also worth understanding how overflow works.
I think seeing a video with Lattner and Feldman (creator of Roc) and his podcast talked something about this with ‘2 complement to overflow’, which is considered standard compiler behavior.
I would be lying if I said I completely understand this, but something to note. I think this behavior on both GCC and Clang.
Edit: Okay so it was about SIMD and how overflow is done with SIMD. It is a fairly interesting explanation, but not so related to what you were saying I believe.
Your videos have been incredible! I've been a hobby dev for about 8 years, and always felt the need to understand how things work under the hood. I took a bootcamp (mainly web dev) last year and haven't had much luck on jobs, so I'm back in school and they are having me skip straight to cs2 and I have needed to cram C++ into my brain over the last two months (after mainly working with Python, JS, and a bit of C#), your videos have changed my perspective on so much. If I had to learn it all again, I’d be right back here. You're an amazing teaching resource and a true inspiration, I'm excited to see where the channel goes!
When i noticed that the memory diagrams addressed 4-bit values it startled me and eventually i thought that this was done just to make the diagram smaller
lots of 🖤
You are really inspiring me to learn my field a bit more in depth
(funny ending btw)
Thank you so much for bringing such gems, keep doing, you rock!
Great video! Interesting take on books. I own some but I don't find myself reading them. Like yourself I usually find what I need freely, and read up on it.
love your videos kay!
9:25 isn't it -128 to 127? the 0000 0000 takes one off the positive side only?
Yes. 1000 0000 is -128.
Regarding the pronunciation of "tuple": the word is a generalization of quintuple, sextuple, etc., so a logical pronunciation should be whatever rhymes with those words. Of course languages don't always adhere to strict logic, and Wiktionary lists a total of five different pronunciations.
I love you so much, Kay!
XORing registers (we didn't have variables per se, in a Series Six PLC registers were the variables) was the go-to way of zeroing out the registers. Kind of silly to do it this way these days, but back when 1K PLCs ran your plant, it paid to be frugal.
Oh yeah! Art Attack with Beni Weber (in the German Version) was one of my favourite TV-Shows.
(at 02:21) "I wanna do this for every part of Software field..." -> Yes Please! Count me in! 👍
[EDIT] Oh and on the Topic of Games and Coding: I love to play Stationeers and Stormworks. Stationeers uses a MIPS like Assembly Language (called IC10), Stormworks uses Lua.
Good video like always!
Lovely idea!
I thought it was a video edit mistake or a mind lapse. Then realized I had been tricked and laughed out loud.
cool stuff
I would like to say I paid better attention to the code and noticed all of these mistakes, but TH-cam limits me to 360p in the browser, so I'd have to download the videos and force a higher resolution, which is just annoying. In the browser all coding videos are basically just fuzz. The only correction I had for this video was already addressed by the pinned comment, but I'll add that you can simply include limits.h and print all the limits out for all the standard numerical types. I'm sure someone has a version of that somewhere, and I would post my own, but TH-cam also deletes every post I make that has a link or long tracts of code in it.
programming attack channel 🙏🏽🙏🏽
Linus says linux is linux, so we go with that.
But the MFer who invented the gif is WRONG
Lacky my favourite❤
Lets go!
that ending 🤣
What is the debugger called again? And can you please confirm what development IDE you are using and how to set it up with a C compiler? Thank you.
the debugger is called "radare2". I don't know about the IDE though. I hope you get your answer :)
And re: the IDE - it's just VS Code, no special setup. The only thing maybe somewhat unusual in what I do with VS Code is that I put the terminal in the editor area - which you can find with cmd/ctrl+shift+p "Terminal: create new terminal in editor area". The C compiler I typically use is clang (along with this template sometimes - github.com/neoeno/toy-c-project-template ) and how you install that will probably vary depending on your OS.
If I'm missing something that looks different though, do point it out and I can advise!
art attack teach me who to drawn nice trees
Where did my comment disappear to?
trans queen we love you!!!!
Trans or not still lover them because of their quality
it doesnt matter, as long as Kay Lack doing great content, a huge wave of supports come to him/her
Imagine calling someone a "cis king".
@@flflflflflflyou rang?
^ i do that 24/7
Balazingance
th-cam.com/video/8NKWE71RMvg/w-d-xo.html
th-cam.com/video/N3vFbzdGwIo/w-d-xo.html&pp=ygUaYmFsYW5jaW5nIHRoZSBib2R5IGZpdG5lc3M%3D
Does ODE4 on rust code
sorry for bringing up more of this, but your pronunciation of POSIX is unusual to me, i prononce it more similarly to posit
Lol at the end
"For the fun of it" is a good book. Not very "educational" but nontheless fun to read.
re: reading right to left, you should have a chat with ramsey nasser! en.m.wikipedia.org/wiki/Qalb_(programming_language)