www.ugnews.info

ๅ››ๅ‰‡่จˆ็ฎ—ใ€œๆ–‡ๅญ—ๅˆ—ใจๅค‰ๆ•ฐใ€œ16้€ฒๆ•ฐใฎๅค‰ๆ›

ๅฟœๆดใฎใ‚ณใƒกใƒณใƒˆใจใ‹ใใ‚Œใ‚ˆ(ๆŒจๆ‹ถ)ใ€‚

ใŠใฏใ‚ˆใ†ใ”ใ–ใ„ใพใ™๏ผugnewsใงใ™๏ผ
4ๆ™‚ใใ‚‰ใ„ใ‹ใ‚‰ไปŠใใ‚‰ใ„ใพใงPerlใ‚’ๅ‹‰ๅผทใ—ใฆใ„ใŸใ‹ใ‚‰็›ฎใŒใ—ใฑใ—ใฑใ ใœใ€‚

ไปŠๅ›žใฏใ‚ฟใ‚คใƒˆใƒซ้€šใ‚Šใ€ๅ››ๅ‰‡่จˆ็ฎ—ใ€œๆ–‡ๅญ—ๅˆ—ใจๅค‰ๆ•ฐใ€œ16้€ฒๆ•ฐใฎๅค‰ๆ›ใพใงใ‚„ใ‚Šใพใ—ใŸใ€‚
ใกใ‚‡ใ“ใกใ‚‡ใ“ใจ.plใƒ•ใ‚กใ‚คใƒซใ‚’ๅˆ†ใ‘ใŸใฎใง4ใคใซใชใฃใฆใ—ใพใฃใŸใ€‚


ใพใšใฏๅ‰ๅ›žใ‚„ใฃใŸใ‚„ใคใฎๅฟœ็”จใงใ™(090815.pl)ใ€‚

ใ“ใ†ใ„ใ†ใ“ใจใ‚’ๆ›ธใ„ใŸใ€‚

use strict;	# ใƒ—ใƒญใ‚ฐใƒฉใƒ ใฎใƒใ‚งใƒƒใ‚ฏใ—ใฆใใ‚Œใ‚‹
use warnings;	# ่ฉณใ—ใ„่ญฆๅ‘Šใ‚’ๆ•™ใˆใฆใใ‚Œใ‚‹

my $price = 100;

print "ใ‚ใŸใ—ใฎไพกๅ€คใฏ$priceๅ††ใงใ™โ€ฆใ€‚\n";
print "\n";

print "fubaใฏไฟบใฎ$priceๅ€ใ™ใ”ใ„!!\n";
print "\n";

# $ใฎๅ‰ใซ\ใ‚’ๅ…ฅใ‚Œใ‚‹ใจใ“ใ‚“ใชๆ„Ÿใ˜ใซใชใ‚‹

print "\$price is $price";
print "\n";

ใ“ใ‚Œใ‚’ๅฎŸ่กŒใ™ใ‚‹ใจใ“ใ†ใชใ‚‹ใ€‚

ใ‚ใŸใ—ใฎไพกๅ€คใฏ100ๅ††ใงใ™โ€ฆใ€‚

fubaใฏไฟบใฎ100ๅ€ใ™ใ”ใ„!!

$price is 100

ใ‚ˆใ‹ใฃใŸใงใ™ใญใ€‚ใ‚ˆใ†ใ™ใ‚‹ใซ่จ€่‘‰ใ‚’ๅ…ฅใ‚Œใฆ่ฃœใˆใ‚‹ใ‚“ใงใ™ใญใ€‚


โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•


ๆฌกใฏๅ››ๅ‰‡ๆผ”็ฎ—(090815-02.pl)ใ€‚

ๅ››ๅ‰‡ๆผ”็ฎ—ใจใฏๅŠ ็ฎ—(่ถณใ—็ฎ—)ใ€ๆธ›็ฎ—(ๅผ•ใ็ฎ—)ใ€ไน—็ฎ—(ๆŽ›ใ‘็ฎ—)ใ€้™ค็ฎ—(ๅ‰ฒใ‚Š็ฎ—)ใฎใ“ใจใ‚‰ใ—ใ„ใ€‚

ใ“ใ‚“ใชๆ„Ÿใ˜ใงๆ›ธใ„ใŸใ€‚

use strict;	# ใƒ—ใƒญใ‚ฐใƒฉใƒ ใฎใƒใ‚งใƒƒใ‚ฏใ—ใฆใใ‚Œใ‚‹
use warnings;	# ่ฉณใ—ใ„่ญฆๅ‘Šใ‚’ๆ•™ใˆใฆใใ‚Œใ‚‹

my $add = 12 + 3;	# ่ถณใ—็ฎ—
my $sub = 12 - 3;	# ๅผ•ใ็ฎ—
my $mul = 12 * 3;	# ๆŽ›ใ‘็ฎ—
my $div = 12 / 3;	# ๅ‰ฒใ‚Š็ฎ—

print "\$add = $add\n";
print "\$sub = $sub\n";
print "\$mul = $mul\n";
print "\$div = $div\n";
print "\n";

# +ใจใ‹-ใจใ‹*ใจใ‹/ใจใ‹ใฏๆผ”็ฎ—ๅญใฃใฆใ„ใ†ใ‚‰ใ—ใ„

# ไธ€ๅนด้–“ใฏไฝ•้€ฑ้–“ใ‚ใ‚‹ใ‚“ใ‹ใชใจ่จˆ็ฎ—ใ™ใ‚‹ใจใ“ใ†ใชใ‚‹

print "365 / 7\n";
print 365 / 7;
print "\n\n";

# ๆ•ดๆ•ฐใ ใ‘ๅ–ใ‚Šใ ใ—ใฆใƒผๅ ดๅˆใฏ้–ขๆ•ฐintใจใ„ใ†ใฎใ‚’ไฝฟใ†

print 'int(365 / 7)',"\n";
print "โ†“\n";
print int(365 / 7);
print "\n\n";

# ๅ››ๆจไบ”ๅ…ฅใ™ใ‚‹ๅ ดๅˆใ‚‚้–ขๆ•ฐint

my $x = 1234.6;
print int($x + 0.5);

ๅฎŸ่กŒ็ตๆžœใฏใ“ใ‚“ใชๆ„Ÿใ˜ใ€‚

$add = 15
$sub = 9
$mul = 36
$div = 4

365 / 7
52.1428571428571

int(365 / 7)
โ†“
52

1235

ใกใ‚ƒใฃใ‹ใ—ใ‚ณใƒกใƒณใƒˆใจใ‹ใ“ใพใ‚ใซๅ…ฅใ‚Œใฆใ‚‹ใฎใงๆ›ธใ‹ใชใ„ใ‘ใฉใ€ใพใ‚ใ“ใ‚“ใชๆ„Ÿใ˜ใซใชใ‚Šใพใ—ใŸใ€‚ใคใƒผใ‹้–ขๆ•ฐintใชใ‚“ใฆไฝฟใ†ใจใใ‚ใ‚‹ใ‚“ใ‹ใญใ€‚


โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•


ๆฌกใฏๅค‰ๆ•ฐใซๆ•ฐใ˜ใ‚ƒใใฆๆ–‡ๅญ—ๅˆ—ใ‚’ไปฃๅ…ฅใ—ใŸใ‚ˆใƒใ‚ฒใŒ(090815-03.pl)ใ€‚

ใ“ใ‚“ใชใฎๆ›ธใ„ใŸใ€‚

use strict;
use warnings;

my $name = "satan";
print "ไฟบใ‚’ๅ‹•ใ‹ใ™ใ‚‚ใฎใฏ$nameใ !!\n";
print "\n";

# ๅผ•็”จ็ฌฆใ‚’ใคใ‘ใŸใ„ๅ ดๅˆใ€\ใ‚’็ฝฎใ

my $name2 = "\"saten\"";
print "ไฟบใ‚’ๅ‹•ใ‹ใ™ใ‚‚ใฎใฏ$name2ใ !!\n";
print "\n";

# ๆ–‡ๅญ—ๅˆ—ใ‚’้€ฃ็ตใ—ใŸใ„ๅ ดๅˆใ€ๆผ”็ฎ—ๅญ(ใƒ‰ใƒƒใƒˆใ‹ใƒ”ใƒชใ‚ชใƒ‰)ใ‚’ไฝฟใˆใฐใ„ใ„

my $name3 = "ใ‚„ใฃใŸไปŠๆ—ฅใ‹ใ‚‰" . "\"ใ‚ซใƒ„ใƒฉ\"ใ !!";
print "$name3";
print "\n\n";

# ใ‚ชใƒžใ‚ฑ

my $hogehoge = "123";
my $gehogeho = "456";
print "$hogehoge + $gehogeho\n";
print "$hogehoge" . "$gehogeho\n";

ๅฎŸ่กŒใ™ใ‚‹ใจใ“ใ†ใชใ‚‹ใ€‚

ไฟบใ‚’ๅ‹•ใ‹ใ™ใ‚‚ใฎใฏsatanใ !!

ไฟบใ‚’ๅ‹•ใ‹ใ™ใ‚‚ใฎใฏ"saten"ใ !!

ใ‚„ใฃใŸไปŠๆ—ฅใ‹ใ‚‰"ใ‚ซใƒ„ใƒฉ"ใ !!

123 + 456
123456

ใ‚คใƒžใ‚คใƒใ“ใ†ใ„ใ†ใฎใ‚’่ฆšใˆใ‚‹ๅฟ…่ฆใŒใ‚ใ‚‹ใฎใ‹็–‘ๅ•ใ ใ‘ใฉใ€ใพใ‚็”Ÿๆ„ๆฐ—่จ€ใฃใฆใชใ„ใง่ฆšใˆใพใ™ใ€‚

ใ‚ใจใ€ใ‚ชใƒžใ‚ฑใฃใฆใฎใฏใ€Perlใฏๆ•ฐใ‚’ๆ•ฐใจใ—ใฆใกใ‚ƒใ‚“ใจ่ช่ญ˜ใ™ใ‚‹ใ‚“ใ ใ‚ˆใ€ใฟใŸใ„ใชใฎใฎๅฎŸ้จ“ใ€‚"123"ใจ่จ˜่ฟฐใ›ใšใซ123ใฃใฆๆ›ธใ„ใฆใ‚‚ๅŒใ˜็ตๆžœใŒๅ‡บใ‚‹ใ€‚ใงใ‚‚ๆผ”็ฎ—ๅญ.ใจใ‹ไฝฟใ†ใจใ‚ใ‚ใ‚„ใฃใฆ้€ฃ็ตใจใ‹ใ‚‚ใ—ใฆใใ‚Œใ‚‹ใ€‚


โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•


ๆœ€ๅพŒใ€‚16้€ฒๆ•ฐใ†ใ‚“ใฌใ‚“ใ‹ใ‚“ใฌใ‚“(090815-04.pl)ใ€‚

16้€ฒๆ•ฐใฎใ“ใจใฏใพใ‚ใŠๅ‰ใใ†ใ„ใ†ๅญ˜ๅœจใ ใ‚ใฃใฆใฎใฏๅˆ†ใ‹ใ‚‹ใ‚“ใ ใ‘ใฉใ€ใ€Œ195ใ‚’16้€ฒๆ•ฐใงใ„ใ†ใจไฝ•ใ ใ‚ˆใ€ใฟใŸใ„ใช่ณชๅ•ใซใฏ็ญ”ใˆใ‚‰ใ‚“ใชใ„(็ญ”ใˆใฏC3)ใ€‚ใ„ใ‚„ใ€ใใ†ใ„ใ†ใฎใฃใฆๅˆฅใซ่ฆšใˆใ‚‹ๅฟ…่ฆใชใ„ใฎใ‹ใ‚‚ใ—ใ‚Œใชใ„ใ‘ใฉใ€‚


ใงใ€ๆ™ฎๆฎตใŠใ‚ŒใŒไฝฟใฃใฆใ‚‹10้€ฒๆ•ฐใ‚’16้€ฒๆ•ฐใซๅค‰ๆ›ใ—ใŸใ‚Šใ€0ใ€œ255ใพใงใฎ16้€ฒๆ•ฐใฎ่กจใ‚’ไฝœใฃใŸใ‚Šใ—ใŸใ€‚

use strict;
use warnings;

# 10้€ฒๆ•ฐใ‚’16้€ฒๆ•ฐใซๅค‰ๆ›ใ™ใ‚‹

my $value = 255;	# ไปŠๅ›žใฏ255ใ‚’16้€ฒๆ•ฐใง่กจ่จ˜ใ™ใ‚‹
my $str = sprintf('%X', $value);	# '%X'ใฏ16้€ฒๆ•ฐใ‚’่กจ็คบใ™ใ‚‹ใŸใ‚ใฎๆŒ‡็คบ
print $str;
print "\n\n";

# ้–ขๆ•ฐsprintfใฏใ€ๆง˜ใ€…ใชๆ›ธๅผใงๆ•ฐใ‚’ๆ–‡ๅญ—ๅˆ—ใซๅค‰ๆ›ใ™ใ‚‹ใ‚‚ใฎ

# ใ“ใ“ใ‹ใ‚‰่กจใคใใ‚‹ใƒคใƒ„ใฎใ‚ณใƒผใƒ‰

foreach my $value2 (0..255) {
	my $str = sprintf('%X', $value2);
	print $value2, ' -> ', $str, "\n";
}

# ้–ขๆ•ฐforeachใฏใ€้…ๅˆ—ใ‚’็”จใ„ใฆ็นฐใ‚Š่ฟ”ใ—ใพใใ‚‹ใ‚‚ใฎใ€ใŸใถใ‚“

# ใ‚ชใƒžใ‚ฑ๏ผš้€†ใซ16้€ฒๆ•ฐใงๆ›ธใ‹ใ‚ŒใŸๆ–‡ๅญ—ๅˆ—ใ‚’ๆ•ฐใซ็›ดใ™ใซใฏ้–ขๆ•ฐhexใ‚’ไฝฟใ†

print hex('FF');	#ใ“ใ‚Œใ ใจ255ใจ่กจ็คบใ•ใ‚Œใ‚‹

ใ“ใ‚ŒใงๅฎŸ่กŒ็ตๆžœใฏใ“ใ†ใชใ‚‹ใ€‚

FF

0 -> 0
1 -> 1
2 -> 2
3 -> 3
4 -> 4
5 -> 5
6 -> 6
ใƒป
ใƒป
ใƒป
ใƒป
249 -> F9
250 -> FA
251 -> FB
252 -> FC
253 -> FD
254 -> FE
255 -> FF

255

ใ“ใ‚“ใชๆ„Ÿใ˜ใ€‚ใ•ใ™ใŒใซ255ใพใงใ“ใ“ใซๅผตใ‚‹ใฎใฏใ‚ขใƒฌใชใฎใง็œ็•ฅใ€‚


โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•โ€•


ใพใ‚ไปŠๆ—ฅใฏใ“ใ‚“ใชๆ„Ÿใ˜ใงใ€‚ๆฌกใฏๆ–‡ๅญ—ๅˆ—ๅ‡ฆ็†้–ขๆ•ฐใจใ„ใ†ใฎใจใƒ’ใ‚ขใƒ‰ใ‚ญใƒฅใƒกใƒณใƒˆใจใ„ใ†ใฎใ‚’ใ‚„ใ‚‹ใ‚ˆใ€‚