• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EST 10:00
CET 16:00
KST 00:00
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
ByuL: The Forgotten Master of ZvT25Behind the Blue - Team Liquid History Book17Clem wins HomeStory Cup 289HomeStory Cup 28 - Info & Preview13Rongyi Cup S3 - Preview & Info8
Community News
Weekly Cups (Feb 9-15): herO doubles up2ACS replaced by "ASL Season Open" - Starts 21/0241LiuLi Cup: 2025 Grand Finals (Feb 10-16)46Weekly Cups (Feb 2-8): Classic, Solar, MaxPax win2Nexon's StarCraft game could be FPS, led by UMS maker16
StarCraft 2
General
Behind the Blue - Team Liquid History Book ByuL: The Forgotten Master of ZvT Liquipedia WCS Portal Launched Kaelaris on the futue of SC2 and much more... How do you think the 5.0.15 balance patch (Oct 2025) for StarCraft II has affected the game?
Tourneys
Sparkling Tuna Cup - Weekly Open Tournament PIG STY FESTIVAL 7.0! (19 Feb - 1 Mar) StarCraft Evolution League (SC Evo Biweekly) How do the "codes" work in GSL? LiuLi Cup: 2025 Grand Finals (Feb 10-16)
Strategy
Custom Maps
Map Editor closed ? [A] Starcraft Sound Mod
External Content
Mutation # 513 Attrition Warfare The PondCast: SC2 News & Results Mutation # 512 Overclocked Mutation # 511 Temple of Rebirth
Brood War
General
Do you consider PvZ imbalanced? Recent recommended BW games BGH Auto Balance -> http://bghmmr.eu/ BW General Discussion CasterMuse Youtube
Tourneys
Escore Tournament StarCraft Season 1 [Megathread] Daily Proleagues Small VOD Thread 2.0 KCM Race Survival 2026 Season 1
Strategy
Simple Questions, Simple Answers Zealot bombing is no longer popular? Fighting Spirit mining rates Current Meta
Other Games
General Games
Battle Aces/David Kim RTS Megathread Diablo 2 thread Nintendo Switch Thread ZeroSpace Megathread Path of Exile
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
Vanilla Mini Mafia TL Mafia Community Thread Mafia Game Mode Feedback/Ideas
Community
General
US Politics Mega-thread Russo-Ukrainian War Thread Canadian Politics Mega-thread Ask and answer stupid questions here! Things Aren’t Peaceful in Palestine
Fan Clubs
The IdrA Fan Club The herO Fan Club!
Media & Entertainment
[Req][Books] Good Fantasy/SciFi books [Manga] One Piece Anime Discussion Thread
Sports
2024 - 2026 Football Thread Formula 1 Discussion TL MMA Pick'em Pool 2013
World Cup 2022
Tech Support
TL Community
The Automated Ban List
Blogs
ASL S21 English Commentary…
namkraft
Inside the Communication of …
TrAiDoS
My 2025 Magic: The Gathering…
DARKING
Life Update and thoughts.
FuDDx
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1730 users

The Big Programming Thread - Page 307

Forum Index > General Forum
Post a Reply
Prev 1 305 306 307 308 309 1032 Next
Thread Rules
1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution.
2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20)
3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible.
4. Use [code] tags to format code blocks.
waxypants
Profile Blog Joined September 2009
United States479 Posts
Last Edited: 2013-05-27 06:10:26
May 27 2013 05:00 GMT
#6121
On May 24 2013 10:37 phar wrote:
oh jesus my x86 is rusty

mov eax, 56111 // sticks 56111 into the 4 bytes of eax (? is it 4 or 8? fuck if I know, we're going with 4 byte registers woo)
mul eax // multiplies ? by eax, puts result into edx:eax... so is that 56111^2? I think no second arg means by itself here, not sure.
mov edx,0 // puts 0 into edx, so this means we get the 16 least significant bits of 56111^2... 29345 ?
div x // dword 100 is 4 bytes, so we're taking dividend/divisor (edx:eax is dividend, which recall is 29345, x is divisor, which is 100), result goes into eax and remainder goes into edx (or switch around?) 29345 / 100 = 293 remainder 45


so that sticks 293 in eax and 45 in edx
mov edx, 0 // zeroes out edx again
div y // same deal, except dividnig by something bigger than 293, so we get eax = 0, edx = 293.
mov eax, edx // intel backwards notation, moves edx into eax, so we end up with 293.



OR MAYBE THAT'S COMPLETE BULLSHIT I DUNNO LOL


Ooo someone asks a question very few people know about, but that I do. Somebody probably gave an adequate answer by now, but I'll be damned if I don't myself.

eax is 4 bytes. The "e" indicates it is the "extended" version of the 2-byte ax register. You can also address the lower and upper bytes of ax with the names al and ah. On x64 architecture, rax is the 8byte "version" of eax (eax lives in the bottom 4bytes of rax).

BTW, for the rest of this, the notation "edx:eax" means to take the 32-bits from edx, the 32-bits from eax, and mash them together into one big 64-bit value (with eax being the bottom 32-bits).

mul doesn't take a second argument, it is always eax:edx <-- eax*src (assuming src refers to a dword register or memory operand size). The result of this multiply is eax:edx <-- 56111*56111 = 3148444321

mov edx, 0 is clearing the top 32 bits of previous multiply, leaving the bottom 32-bits (which are in eax) intact. It is essentially doing edx:eax <-- edx:eax % (2^32). However, the top 32-bits from this multiply are 0 anyway (56111^2 < 2^32), so for the purposes of this exercise, this does nothing.

A dword-sized div takes edx:eax, divides by the single src value, so it does 3148444321 / 100. It puts the quotient in eax and the remainder into edx. So in this case the result is eax <-- 31484443 and edx <-- 21. We immediately clear edx afterword with the mov, so we are discarding the remainder and preparing for the next div.

Another div, so it is just 31484443 / 10000. The result is eax <-- 3148 and edx <-- 4443.

The final mov puts remainder from the last div (edx) into eax. So the result is eax <-- 4443. Therefore, eax contains 4443 at the end.
waxypants
Profile Blog Joined September 2009
United States479 Posts
May 27 2013 05:04 GMT
#6122
On May 24 2013 16:57 Terranist wrote:
Show nested quote +
On May 24 2013 11:27 Abductedonut wrote:
On May 24 2013 09:14 Terranist wrote:
if anyone could help me with this small snippet of assembly i would be grateful.

+ Show Spoiler +
x dword 100
y dword 10000
mov eax, 56111
mul eax;
mov edx,0
div x
mov edx,0
div y
mov eax, edx

; What number does the resulting eax contain?




To the poster above: Close but not quite...


mov eax, 56111 ; Puts 56111 into EAX (which is 32-bits... 64-bit would be RAX)
mul eax ; Multiplies EAX by EAX - Result is 3,148,444,321 and stored in EAX
mov edx,0 ; shouldn't need to explain this
div x ; Divides EAX by x, puts the remainder in EDX ( EAX = 31,484,443 EDX = 21)
mov edx,0 ;
div y ; Divides 31,484,443 by 10000, stores remainder in EDX (EAX = 3148 EDX = 4443)
mov eax,edx ; Puts EDX into EAX (EAX = 4443)


<3 ASM


thanks for the comments i see it now. learning ASM but i was not sure if mul eax with a large integer like that would create a signed or unsigned number.


imul is signed multiply, mul is unsigned multiply.
Shield
Profile Blog Joined August 2009
Bulgaria4824 Posts
May 27 2013 15:19 GMT
#6123
Seeing this Assembly reminds me of 1st year at university, and I'm finishing 2nd now. Assembly is definitely a language I'll never ever want to encounter again. So low level it hurts.
phar
Profile Joined August 2011
United States1080 Posts
Last Edited: 2013-05-27 18:46:58
May 27 2013 18:46 GMT
#6124
I worked with assembly in 16 bit pics so much my brain can't handle 32 bit registers. It's like any time I get a value > 65535 I mentally split it across two registers.

Good thing I now work with Java for a living, rofl.
Who after all is today speaking about the destruction of the Armenians?
Shield
Profile Blog Joined August 2009
Bulgaria4824 Posts
Last Edited: 2013-05-27 21:10:01
May 27 2013 21:09 GMT
#6125
@phar, is earning a lot from Java? Or is C++ the way to go for a living? I still haven't gone any route, but I'm comfortable with Java because it is easier. I guess I can try C++ anyway.
Roe
Profile Blog Joined June 2010
Canada6002 Posts
May 27 2013 21:11 GMT
#6126
On May 28 2013 00:19 darkness wrote:
Seeing this Assembly reminds me of 1st year at university, and I'm finishing 2nd now. Assembly is definitely a language I'll never ever want to encounter again. So low level it hurts.


i had the opposite feeling, it was so low level it felt good!
phar
Profile Joined August 2011
United States1080 Posts
May 27 2013 21:16 GMT
#6127
On May 28 2013 06:09 darkness wrote:
@phar, is earning a lot from Java? Or is C++ the way to go for a living? I still haven't gone any route, but I'm comfortable with Java because it is easier. I guess I can try C++ anyway.

I think we've covered this before man. There are high and low paying jobs for both C++ and Java (and a plethora of other languages). Don't sweat which specific language you're learning right now - most of the skills are transferable. You can pick up new languages really easily after you know the general concepts.
Who after all is today speaking about the destruction of the Armenians?
Shield
Profile Blog Joined August 2009
Bulgaria4824 Posts
May 27 2013 21:21 GMT
#6128
On May 28 2013 06:16 phar wrote:
Show nested quote +
On May 28 2013 06:09 darkness wrote:
@phar, is earning a lot from Java? Or is C++ the way to go for a living? I still haven't gone any route, but I'm comfortable with Java because it is easier. I guess I can try C++ anyway.

I think we've covered this before man. There are high and low paying jobs for both C++ and Java (and a plethora of other languages). Don't sweat which specific language you're learning right now - most of the skills are transferable. You can pick up new languages really easily after you know the general concepts.


Alright, thanks.

On May 28 2013 06:11 Roe wrote:
Show nested quote +
On May 28 2013 00:19 darkness wrote:
Seeing this Assembly reminds me of 1st year at university, and I'm finishing 2nd now. Assembly is definitely a language I'll never ever want to encounter again. So low level it hurts.


i had the opposite feeling, it was so low level it felt good!


The only enjoyable lowest level stuff for me is malloc and free in C so far. ^^
3FFA
Profile Blog Joined February 2010
United States3931 Posts
Last Edited: 2013-05-28 19:43:20
May 28 2013 19:41 GMT
#6129
What you said is in the spoiler, for comparison.
+ Show Spoiler +

@implementation currentViewController {
// Hold a reference to the child view controller so it's not lost as soon as it's presented
nextViewController _nextViewController;
}

// Let's navigate to the next view controller
- (void)userDidSomething {

// Create an instance of my next view controller
_nextViewController = [[nextViewController alloc] init];

// Display my next view controller
[self.navigationController pushViewController:_nextViewController animated:YES];
}


I did what you said, XCode told me to replace currentViewController or nextViewController with UIViewController in some cases due to errors, and I ended up with this:

@implementation currentViewController {

// Hold a reference to the child view controller so it's not lost as soon as it's presented

UIViewController *_nextViewController;

}



// Let's navigate to the next view controller

- (void)userDidSomething {



// Create an instance of my next view controller

_nextViewController = [[UIViewController alloc] init];


then I get an error for the next line of code which states "Property 'navigationController' not found on object of type currentViewController *'

 // Display my next view controller

[self.navigationController pushViewController:_nextViewController animated:YES];

}

@end


Any ideas why this is happening or what I should do instead?
"As long as it comes from a pure place and from a honest place, you know, you can write whatever you want."
enigmaticcam
Profile Blog Joined October 2010
United States280 Posts
Last Edited: 2013-05-28 21:15:20
May 28 2013 20:20 GMT
#6130
If you haven't subclassed the nextViewController, then yes you'll have to declare it as an instance of UIViewController, rather than an instance of a custom subclass. That change you did looks good.

The only reason I can think of as to why it's telling you self.navigationController is not a valid property of currentViewController is that currentViewController is not a subclass of UIViewController. All UIViewControllers and subclasses of UIViewController should have that property. You must be putting this code in some other place rather than a subclass of UIViewController.

Edit: I created an iPad example in github so you can see how it works: https://github.com/ctangen/ViewControllerTransition
Blisse
Profile Blog Joined July 2010
Canada3710 Posts
May 28 2013 20:27 GMT
#6131
On May 24 2013 10:37 phar wrote:
oh jesus my x86 is rusty

...


OR MAYBE THAT'S COMPLETE BULLSHIT I DUNNO LOL


LOL everytime i read that i laugh
There is no one like you in the universe.
CorsairHero
Profile Joined December 2008
Canada9491 Posts
May 28 2013 23:54 GMT
#6132
On May 28 2013 06:11 Roe wrote:
Show nested quote +
On May 28 2013 00:19 darkness wrote:
Seeing this Assembly reminds me of 1st year at university, and I'm finishing 2nd now. Assembly is definitely a language I'll never ever want to encounter again. So low level it hurts.


i had the opposite feeling, it was so low level it felt good!

Consider a career in analyzing computer viruses and malware
© Current year.
3FFA
Profile Blog Joined February 2010
United States3931 Posts
Last Edited: 2013-05-29 11:14:42
May 29 2013 11:14 GMT
#6133
On May 29 2013 05:20 enigmaticcam wrote:
If you haven't subclassed the nextViewController, then yes you'll have to declare it as an instance of UIViewController, rather than an instance of a custom subclass. That change you did looks good.

The only reason I can think of as to why it's telling you self.navigationController is not a valid property of currentViewController is that currentViewController is not a subclass of UIViewController. All UIViewControllers and subclasses of UIViewController should have that property. You must be putting this code in some other place rather than a subclass of UIViewController.

Edit: I created an iPad example in github so you can see how it works: https://github.com/ctangen/ViewControllerTransition

Thanks! I'll try it out again today. Hopefully your example will help me

@Blisse I laugh every time too
"As long as it comes from a pure place and from a honest place, you know, you can write whatever you want."
Duval
Profile Blog Joined February 2011
Belgium144 Posts
Last Edited: 2013-05-29 14:06:11
May 29 2013 14:05 GMT
#6134
Does anyone have any tips on the designing of a game using a UML diagram? I have to design an implementation of Puerto Rico (quite complex but fun game), but while in class our professor keeps empathizing the importance of a good design, I feel like we really haven't been told how to begin.

I've made easier diagrams before (simple card games, chess) but this game has so much going on I don't really know where to start.
artynko
Profile Joined November 2010
Slovakia86 Posts
May 29 2013 15:11 GMT
#6135
Just start with splitting the game into components (very big one in the beginning) and don't go into specifics. As soon as you can't split anymore go back reiterate the whole design and then start specifying the details in the components (i.e. a diagram that specifies how a card should be played).
If at any point while doing the physical model you find that the "implementation" doesn't fit the initial component idea, update the initial idea go to the initial component model and reiterate over it again. Repeat until you have a detailed model of the whole application.
phar
Profile Joined August 2011
United States1080 Posts
May 29 2013 17:14 GMT
#6136
Also don't worry about the specifics of UML too much. You may have to get that shit right for class, but out in the real world there's a good chance your designs are not going to be religiously following something like UML.
Who after all is today speaking about the destruction of the Armenians?
3FFA
Profile Blog Joined February 2010
United States3931 Posts
Last Edited: 2013-05-29 19:19:16
May 29 2013 19:18 GMT
#6137
On May 29 2013 20:14 3FFA wrote:
Show nested quote +
On May 29 2013 05:20 enigmaticcam wrote:
If you haven't subclassed the nextViewController, then yes you'll have to declare it as an instance of UIViewController, rather than an instance of a custom subclass. That change you did looks good.

The only reason I can think of as to why it's telling you self.navigationController is not a valid property of currentViewController is that currentViewController is not a subclass of UIViewController. All UIViewControllers and subclasses of UIViewController should have that property. You must be putting this code in some other place rather than a subclass of UIViewController.

Edit: I created an iPad example in github so you can see how it works: https://github.com/ctangen/ViewControllerTransition

Thanks! I'll try it out again today. Hopefully your example will help me

@Blisse I laugh every time too


Tried it out, was able to figure out how to get it to work! Thanks!

Still lost on how to set up a button to go to the next slide though ._. [makes me feel stupid cause it seems like it should be obvious]
"As long as it comes from a pure place and from a honest place, you know, you can write whatever you want."
enigmaticcam
Profile Blog Joined October 2010
United States280 Posts
May 29 2013 19:30 GMT
#6138
On May 30 2013 04:18 3FFA wrote:
Show nested quote +
On May 29 2013 20:14 3FFA wrote:
On May 29 2013 05:20 enigmaticcam wrote:
If you haven't subclassed the nextViewController, then yes you'll have to declare it as an instance of UIViewController, rather than an instance of a custom subclass. That change you did looks good.

The only reason I can think of as to why it's telling you self.navigationController is not a valid property of currentViewController is that currentViewController is not a subclass of UIViewController. All UIViewControllers and subclasses of UIViewController should have that property. You must be putting this code in some other place rather than a subclass of UIViewController.

Edit: I created an iPad example in github so you can see how it works: https://github.com/ctangen/ViewControllerTransition

Thanks! I'll try it out again today. Hopefully your example will help me

@Blisse I laugh every time too


Tried it out, was able to figure out how to get it to work! Thanks!

Still lost on how to set up a button to go to the next slide though ._. [makes me feel stupid cause it seems like it should be obvious]

Glad I can help If you ever need any help with anything iOS related, I'd be happy to help again.

If you get a chance to check out that example iPad application I posted, it should help you figure that last bit out. On the view load, I add a button to the navigation bar that calls another function that does the actual push.
3FFA
Profile Blog Joined February 2010
United States3931 Posts
May 29 2013 21:10 GMT
#6139
I did. Just ran it.... says it can't load the simulator because of the version for some reason. =/
"As long as it comes from a pure place and from a honest place, you know, you can write whatever you want."
klo8
Profile Joined August 2010
Austria1960 Posts
May 29 2013 21:33 GMT
#6140
Hi!
I just recently started programming in C++ and my first real project is porting a thing I did in C# that draws L-Systems (basically fractals used for procedural generation of plants for example). I'm using SFML for drawing the things I need. It works fine, but my concern is that it uses up a lot more memory than I feel it should. The C# version of the program uses about 10 MB of RAM when I first start it up, and the C++ version uses 33 MB. (the C# version uses Windows Forms and the C++ version is just a raw window) I know this isn't a very smart comparison, but I still feel it's off. When I start increasing the number of iterations for some of the L-Systems, it very quickly rises to about 200 MB or more. It's not really a performance concern for me right now but I'd be interested in why there is so much memory being used.

What I'm looking for is methods on how to find where all that memory is going. I'm using VS2012 and the built-in profiler only has support for .NET-managed memory.

I've put the code on GitHub if someone feels like taking a look.
This post is clearly not a hurr, as you can see from the graph, the durr never intersects with the derp.
Prev 1 305 306 307 308 309 1032 Next
Please log in or register to reply.
Live Events Refresh
PiG Sty Festival
09:00
Group D
YoungYakov vs ShoWTimELIVE!
ByuN vs Serral
PiGStarcraft1718
TKL 401
IndyStarCraft 312
BRAT_OK 190
Rex180
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
PiGStarcraft1718
TKL 401
IndyStarCraft 312
BRAT_OK 190
Rex 180
ProTech105
Vindicta 10
EmSc Tv 6
StarCraft: Brood War
Britney 47532
Calm 6110
Rain 4462
Horang2 2837
Jaedong 1826
Larva 1092
Mini 703
actioN 552
Stork 506
Soma 310
[ Show more ]
hero 237
Zeus 220
PianO 207
Rush 201
JulyZerg 118
Dewaltoss 104
Sharp 102
Movie 91
Shine 87
Pusan 81
Barracks 81
Killer 72
soO 51
yabsab 43
Sacsri 41
Hm[arnc] 37
sorry 35
ToSsGirL 28
scan(afreeca) 18
Terrorterran 17
HiyA 15
Rock 12
NaDa 12
Dota 2
Gorgc5192
qojqva1901
XcaliburYe175
Counter-Strike
fl0m2469
byalli1059
Super Smash Bros
Mew2King73
Heroes of the Storm
Khaldor385
Other Games
Grubby3760
singsing2627
Liquid`RaSZi1633
B2W.Neo1138
DeMusliM352
Sick173
ToD143
Organizations
Counter-Strike
PGL16384
StarCraft 2
WardiTV713
EmSc Tv 6
EmSc2Tv 6
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 12 non-featured ]
StarCraft 2
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• C_a_k_e 1113
League of Legends
• Jankos3384
Upcoming Events
Replay Cast
9h
Replay Cast
18h
Wardi Open
21h
Monday Night Weeklies
1d 2h
OSC
1d 9h
WardiTV Winter Champion…
1d 21h
Replay Cast
2 days
WardiTV Winter Champion…
2 days
The PondCast
3 days
Replay Cast
4 days
[ Show More ]
Korean StarCraft League
5 days
CranKy Ducklings
5 days
SC Evo Complete
5 days
Replay Cast
6 days
Sparkling Tuna Cup
6 days
uThermal 2v2 Circuit
7 days
Liquipedia Results

Completed

[S:21] ASL SEASON OPEN 1st Round
LiuLi Cup: 2025 Grand Finals
Underdog Cup #3

Ongoing

KCM Race Survival 2026 Season 1
WardiTV Winter 2026
PiG Sty Festival 7.0
Nations Cup 2026
PGL Cluj-Napoca 2026
IEM Kraków 2026
BLAST Bounty Winter 2026
BLAST Bounty Winter Qual
eXTREMESLAND 2025
SL Budapest Major 2025

Upcoming

Acropolis #4 - TS5
Jeongseon Sooper Cup
Spring Cup 2026
[S:21] ASL SEASON OPEN 2nd Round
[S:21] ASL SEASON OPEN 2nd Round Qualifier
Acropolis #4 - TS6
Acropolis #4
HSC XXIX
uThermal 2v2 2026 Main Event
Bellum Gens Elite Stara Zagora 2026
RSL Revival: Season 4
PGL Astana 2026
BLAST Rivals Spring 2026
CCT Season 3 Global Finals
FISSURE Playground #3
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
BLAST Open Spring 2026
ESL Pro League Season 23
ESL Pro League Season 23
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.