Sign in to follow this  
Code_Analysis

All about 64-bit programming in one place

Recommended Posts

[b]1. Articles:[/b]
[list]
[url=http://www.viva64.com/en/a/0065/]A Collection of Examples of 64-bit Errors in Real Programs[/url]
[url=http://www.viva64.com/en/a/0050/]About size_t and ptrdiff_t[/url]
[url=http://www.viva64.com/en/a/0063/]64 bits[/url]
[url=http://www.viva64.com/en/a/0029/]AMD64 (EM64T) architecture[/url]
[url=http://www.viva64.com/en/a/tag/x64/]Other articles[/url][/list]

[b]2. Lessons on development of 64-bit C/C++ applications[/b]

Main page: [url=http://www.viva64.com/en/l/]http://www.viva64.com/en/l/[/url]

[i]The course is composed of 28 lessons devoted to introduction to 64-bit systems, issues of building 64-bit applications, methods of searching errors specific to 64-bit code and code optimization. Such questions are also considered as estimate of the cost of moving to 64-bit systems and rationality of this move.[/i]

The contents of the course:[list][*][url=http://www.viva64.com/en/l/0001/]Lesson 01[/url]. What 64-bit systems are.[*][url=http://www.viva64.com/en/l/0002/]Lesson 02[/url]. Support of 32-bit applications.[*][url=http://www.viva64.com/en/l/0003/]Lesson 03[/url]. Porting code to 64-bit systems. The pros and cons.[*][url=http://www.viva64.com/en/l/0004/]Lesson 04[/url]. Creating the 64-bit configuration.[*][url=http://www.viva64.com/en/l/0005/]Lesson 05[/url]. Building a 64-bit application.[*][url=http://www.viva64.com/en/l/0006/]Lesson 06[/url]. Errors in 64-bit code.[*][url=http://www.viva64.com/en/l/0007/]Lesson 07[/url]. The issues of detecting 64-bit errors.[*][url=http://www.viva64.com/en/l/0008/]Lesson 08[/url]. Static analysis for detecting 64-bit errors.[*][url=http://www.viva64.com/en/l/0009/]Lesson 09[/url]. Pattern 01. Magic numbers.[*][url=http://www.viva64.com/en/l/0010/]Lesson 10[/url]. Pattern 02. Functions with variable number of arguments.[*][url=http://www.viva64.com/en/l/0011/]Lesson 11[/url]. Pattern 03. Shift operations.[*][url=http://www.viva64.com/en/l/0012/]Lesson 12[/url]. Pattern 04. Virtual functions.[*][url=http://www.viva64.com/en/l/0013/]Lesson 13[/url]. Pattern 05. Address arithmetic.[*][url=http://www.viva64.com/en/l/0014/]Lesson 14[/url]. Pattern 06. Changing an array's type.[*][url=http://www.viva64.com/en/l/0015/]Lesson 15[/url]. Pattern 07. Pointer packing.[*][url=http://www.viva64.com/en/l/0016/]Lesson 16[/url]. Pattern 08. Memsize-types in unions.[*][url=http://www.viva64.com/en/l/0017/]Lesson 17[/url]. Pattern 09. Mixed arithmetic.[*][url=http://www.viva64.com/en/l/0018/]Lesson 18[/url]. Pattern 10. Storage of integer values in double.[*][url=http://www.viva64.com/en/l/0019/]Lesson 19[/url]. Pattern 11. Serialization and data interchange.[*][url=http://www.viva64.com/en/l/0020/]Lesson 20[/url]. Pattern 12. Exceptions.[*][url=http://www.viva64.com/en/l/0021/]Lesson 21[/url]. Pattern 13. Data alignment.[*][url=http://www.viva64.com/en/l/0022/]Lesson 22[/url]. Pattern 14. Overloaded functions.[*][url=http://www.viva64.com/en/l/0023/]Lesson 23[/url]. Pattern 15. Growth of structures' sizes.[*][url=http://www.viva64.com/en/l/0024/]Lesson 24[/url]. Phantom errors.[*][url=http://www.viva64.com/en/l/0025/]Lesson 25[/url]. Working with patterns of 64-bit errors in practice.[*][url=http://www.viva64.com/en/l/0026/]Lesson 26[/url]. Optimization of 64-bit programs.[*][url=http://www.viva64.com/en/l/0027/]Lesson 27[/url]. Peculiarities of creating installers for a 64-bit environment.[*][url=http://www.viva64.com/en/l/0028/]Lesson 28[/url]. Estimating the cost of 64-bit migration of C/C++ applications.[/list]

You may open all the lessons in [url=http://www.viva64.com/en/l/full/]one file[/url] (the print version as well).

[b]3. Knowledge Base[/b]
[list]
[url=http://www.viva64.com/en/k/0033/]Can I use 32-bit pointers in a 64-bit application?[/url]
[url=http://www.viva64.com/en/k/0016/]How can a 32-bit program detect that it is launched in a 64-bit Windows?[/url]
[url=http://www.viva64.com/en/k/0018/]Functions of the ntohl/htonl class and 64-bit values[/url]
[url=http://www.viva64.com/en/k/]Other...[/url][/list]

[b]4. [url=http://www.viva64.com/en/r/tag/x64/]Articles' Reviews[/url][/b]

[b]5. Blog[/b]
[list]
[url=http://www.viva64.com/en/b/0074/]64-bit programs and floating-point calculations[/url]
[url=http://www.viva64.com/en/b/0069/]The reasons why 64-bit programs require more stack memory[/url]
[url=http://www.viva64.com/en/b/0080/]Searching for explicit conversion of a pointer to a 32-bit type[/url]
[url=http://www.viva64.com/en/b/]Other posts...[/url][/list]

[b]6. [url=http://www.viva64.com/en/viva64-tool/]Detect 64-Bit Portability Issues[/url][/b]

[b]7. Terminology[/b]
[list]
[url=http://www.viva64.com/en/t/0057/]/Wp64[/url]
[url=http://www.viva64.com/en/t/0005/]Address arithmetic[/url]
[url=http://www.viva64.com/en/t/0011/]Data alignment[/url]
[url=http://www.viva64.com/en/t/]Data model[/url]
[url=http://www.viva64.com/en/t/]Other terms...[/url][/list]

[b]8. [url=http://www.reddit.com/r/viva64/]Our 64-bit reddit[/url][/b]

[b]9. Contact[/b]
[list]
My E-Mail: karpov[del]@viva64.com
[url=http://www.viva64.com/en/about-feedback/]Feedback page[/url]
Twitter - [url=http://twitter.com/Code_Analysis]http://twitter.com/Code_Analysis[/url][/list]


Share this post


Link to post
Share on other sites
Sign in to follow this